{
  "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"
  }
}
