{
  "schemaVersion": "1.0",
  "item": {
    "slug": "getresponse",
    "name": "GetResponse",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/byungkyu/getresponse",
    "canonicalUrl": "https://clawhub.ai/byungkyu/getresponse",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/getresponse",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=getresponse",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "LICENSE.txt"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/getresponse"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/getresponse",
    "agentPageUrl": "https://openagent3.xyz/skills/getresponse/agent",
    "manifestUrl": "https://openagent3.xyz/skills/getresponse/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/getresponse/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "GetResponse",
        "body": "Access the GetResponse API with managed OAuth authentication. Manage email marketing campaigns, contacts, newsletters, autoresponders, segments, and forms."
      },
      {
        "title": "Quick Start",
        "body": "# List campaigns\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://gateway.maton.ai/getresponse/v3/campaigns')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF"
      },
      {
        "title": "Base URL",
        "body": "https://gateway.maton.ai/getresponse/{native-api-path}\n\nReplace {native-api-path} with the actual GetResponse API endpoint path. The gateway proxies requests to api.getresponse.com and automatically injects your OAuth token."
      },
      {
        "title": "Authentication",
        "body": "All requests require the Maton API key in the Authorization header:\n\nAuthorization: Bearer $MATON_API_KEY\n\nEnvironment Variable: Set your API key as MATON_API_KEY:\n\nexport MATON_API_KEY=\"YOUR_API_KEY\""
      },
      {
        "title": "Getting Your API Key",
        "body": "Sign in or create an account at maton.ai\nGo to maton.ai/settings\nCopy your API key"
      },
      {
        "title": "Connection Management",
        "body": "Manage your GetResponse OAuth connections at https://ctrl.maton.ai."
      },
      {
        "title": "List Connections",
        "body": "python <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections?app=getresponse&status=ACTIVE')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF"
      },
      {
        "title": "Create Connection",
        "body": "python <<'EOF'\nimport urllib.request, os, json\ndata = json.dumps({'app': 'getresponse'}).encode()\nreq = urllib.request.Request('https://ctrl.maton.ai/connections', data=data, method='POST')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nreq.add_header('Content-Type', 'application/json')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF"
      },
      {
        "title": "Get Connection",
        "body": "python <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nResponse:\n\n{\n  \"connection\": {\n    \"connection_id\": \"21fd90f9-5935-43cd-b6c8-bde9d915ca80\",\n    \"status\": \"ACTIVE\",\n    \"creation_time\": \"2025-12-08T07:20:53.488460Z\",\n    \"last_updated_time\": \"2026-01-31T20:03:32.593153Z\",\n    \"url\": \"https://connect.maton.ai/?session_token=...\",\n    \"app\": \"getresponse\",\n    \"metadata\": {}\n  }\n}\n\nOpen the returned url in a browser to complete OAuth authorization."
      },
      {
        "title": "Delete Connection",
        "body": "python <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}', method='DELETE')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF"
      },
      {
        "title": "Specifying Connection",
        "body": "If you have multiple GetResponse connections, specify which one to use with the Maton-Connection header:\n\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://gateway.maton.ai/getresponse/v3/campaigns')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nreq.add_header('Maton-Connection', '21fd90f9-5935-43cd-b6c8-bde9d915ca80')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nIf omitted, the gateway uses the default (oldest) active connection."
      },
      {
        "title": "Account Operations",
        "body": "Get Account Details\n\nGET /getresponse/v3/accounts\n\nGet Billing Info\n\nGET /getresponse/v3/accounts/billing"
      },
      {
        "title": "Campaign Operations",
        "body": "Campaigns in GetResponse are equivalent to email lists/audiences.\n\nList Campaigns\n\nGET /getresponse/v3/campaigns\n\nWith pagination:\n\nGET /getresponse/v3/campaigns?page=1&perPage=100\n\nGet Campaign\n\nGET /getresponse/v3/campaigns/{campaignId}\n\nCreate Campaign\n\nPOST /getresponse/v3/campaigns\nContent-Type: application/json\n\n{\n  \"name\": \"My Campaign\"\n}"
      },
      {
        "title": "Contact Operations",
        "body": "List Contacts\n\nGET /getresponse/v3/contacts\n\nWith campaign filter:\n\nGET /getresponse/v3/contacts?query[campaignId]={campaignId}\n\nWith pagination:\n\nGET /getresponse/v3/contacts?page=1&perPage=100\n\nWith sorting:\n\nGET /getresponse/v3/contacts?sort[createdOn]=desc\n\nGet Contact\n\nGET /getresponse/v3/contacts/{contactId}\n\nCreate Contact\n\nPOST /getresponse/v3/contacts\nContent-Type: application/json\n\n{\n  \"email\": \"john@example.com\",\n  \"name\": \"John Doe\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"customFieldValues\": [\n    {\n      \"customFieldId\": \"xyz789\",\n      \"value\": [\"Custom Value\"]\n    }\n  ]\n}\n\nUpdate Contact\n\nPOST /getresponse/v3/contacts/{contactId}\nContent-Type: application/json\n\n{\n  \"name\": \"John Smith\",\n  \"customFieldValues\": [\n    {\n      \"customFieldId\": \"xyz789\",\n      \"value\": [\"Updated Value\"]\n    }\n  ]\n}\n\nDelete Contact\n\nDELETE /getresponse/v3/contacts/{contactId}\n\nGet Contact Activities\n\nGET /getresponse/v3/contacts/{contactId}/activities"
      },
      {
        "title": "Custom Fields",
        "body": "List Custom Fields\n\nGET /getresponse/v3/custom-fields\n\nGet Custom Field\n\nGET /getresponse/v3/custom-fields/{customFieldId}\n\nCreate Custom Field\n\nPOST /getresponse/v3/custom-fields\nContent-Type: application/json\n\n{\n  \"name\": \"company\",\n  \"type\": \"text\",\n  \"hidden\": false,\n  \"values\": []\n}"
      },
      {
        "title": "Newsletter Operations",
        "body": "List Newsletters\n\nGET /getresponse/v3/newsletters\n\nSend Newsletter\n\nPOST /getresponse/v3/newsletters\nContent-Type: application/json\n\n{\n  \"subject\": \"Newsletter Subject\",\n  \"name\": \"Internal Newsletter Name\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"content\": {\n    \"html\": \"<html><body>Newsletter content</body></html>\",\n    \"plain\": \"Newsletter content\"\n  },\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nSend Draft Newsletter\n\nPOST /getresponse/v3/newsletters/send-draft\nContent-Type: application/json\n\n{\n  \"messageId\": \"newsletter123\",\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nList RSS Newsletters\n\nGET /getresponse/v3/rss-newsletters"
      },
      {
        "title": "Tags",
        "body": "List Tags\n\nGET /getresponse/v3/tags\n\nGet Tag\n\nGET /getresponse/v3/tags/{tagId}\n\nCreate Tag\n\nPOST /getresponse/v3/tags\nContent-Type: application/json\n\n{\n  \"name\": \"VIP Customer\"\n}\n\nUpdate Tag\n\nPOST /getresponse/v3/tags/{tagId}\nContent-Type: application/json\n\n{\n  \"name\": \"Premium Customer\"\n}\n\nDelete Tag\n\nDELETE /getresponse/v3/tags/{tagId}\n\nAssign Tags to Contact\n\nPOST /getresponse/v3/contacts/{contactId}/tags\nContent-Type: application/json\n\n{\n  \"tags\": [\n    {\"tagId\": \"abc123\"},\n    {\"tagId\": \"xyz789\"}\n  ]\n}"
      },
      {
        "title": "Autoresponders",
        "body": "List Autoresponders\n\nGET /getresponse/v3/autoresponders\n\nGet Autoresponder\n\nGET /getresponse/v3/autoresponders/{autoresponderId}\n\nCreate Autoresponder\n\nPOST /getresponse/v3/autoresponders\nContent-Type: application/json\n\n{\n  \"name\": \"Welcome Email\",\n  \"subject\": \"Welcome to our list!\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"triggerSettings\": {\n    \"dayOfCycle\": 0\n  },\n  \"content\": {\n    \"html\": \"<html><body>Welcome!</body></html>\",\n    \"plain\": \"Welcome!\"\n  }\n}\n\nUpdate Autoresponder\n\nPOST /getresponse/v3/autoresponders/{autoresponderId}\nContent-Type: application/json\n\n{\n  \"subject\": \"Updated Welcome Email\"\n}\n\nDelete Autoresponder\n\nDELETE /getresponse/v3/autoresponders/{autoresponderId}\n\nGet Autoresponder Statistics\n\nGET /getresponse/v3/autoresponders/{autoresponderId}/statistics\n\nGet All Autoresponder Statistics\n\nGET /getresponse/v3/autoresponders/statistics"
      },
      {
        "title": "From Fields",
        "body": "List From Fields\n\nGET /getresponse/v3/from-fields\n\nGet From Field\n\nGET /getresponse/v3/from-fields/{fromFieldId}"
      },
      {
        "title": "Transactional Emails",
        "body": "Note: Transactional email endpoints may require additional OAuth scopes that are not included in the default authorization.\n\nList Transactional Emails\n\nGET /getresponse/v3/transactional-emails\n\nSend Transactional Email\n\nPOST /getresponse/v3/transactional-emails\nContent-Type: application/json\n\n{\n  \"fromField\": {\n    \"fromFieldId\": \"abc123\"\n  },\n  \"subject\": \"Your Order Confirmation\",\n  \"recipients\": {\n    \"to\": \"customer@example.com\"\n  },\n  \"content\": {\n    \"html\": \"<html><body>Order confirmed!</body></html>\",\n    \"plain\": \"Order confirmed!\"\n  }\n}\n\nGet Transactional Email\n\nGET /getresponse/v3/transactional-emails/{transactionalEmailId}\n\nGet Transactional Email Statistics\n\nGET /getresponse/v3/transactional-emails/statistics"
      },
      {
        "title": "Imports",
        "body": "List Imports\n\nGET /getresponse/v3/imports\n\nCreate Import\n\nPOST /getresponse/v3/imports\nContent-Type: application/json\n\n{\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"contacts\": [\n    {\n      \"email\": \"user1@example.com\",\n      \"name\": \"User One\"\n    },\n    {\n      \"email\": \"user2@example.com\",\n      \"name\": \"User Two\"\n    }\n  ]\n}\n\nGet Import\n\nGET /getresponse/v3/imports/{importId}"
      },
      {
        "title": "Workflows (Automations)",
        "body": "List Workflows\n\nGET /getresponse/v3/workflow\n\nGet Workflow\n\nGET /getresponse/v3/workflow/{workflowId}\n\nUpdate Workflow\n\nPOST /getresponse/v3/workflow/{workflowId}\nContent-Type: application/json\n\n{\n  \"status\": \"enabled\"\n}"
      },
      {
        "title": "Segments (Search Contacts)",
        "body": "List Segments\n\nGET /getresponse/v3/search-contacts\n\nCreate Segment\n\nPOST /getresponse/v3/search-contacts\nContent-Type: application/json\n\n{\n  \"name\": \"Active Subscribers\",\n  \"subscribersType\": [\"subscribed\"],\n  \"sectionLogicOperator\": \"or\",\n  \"section\": []\n}\n\nGet Segment\n\nGET /getresponse/v3/search-contacts/{searchContactId}\n\nUpdate Segment\n\nPOST /getresponse/v3/search-contacts/{searchContactId}\nContent-Type: application/json\n\n{\n  \"name\": \"Updated Segment Name\"\n}\n\nDelete Segment\n\nDELETE /getresponse/v3/search-contacts/{searchContactId}\n\nGet Contacts from Segment\n\nGET /getresponse/v3/search-contacts/{searchContactId}/contacts\n\nSearch Contacts Without Saving\n\nPOST /getresponse/v3/search-contacts/contacts\nContent-Type: application/json\n\n{\n  \"subscribersType\": [\"subscribed\"],\n  \"sectionLogicOperator\": \"or\",\n  \"section\": []\n}"
      },
      {
        "title": "Forms",
        "body": "Note: Forms endpoints may require additional OAuth scopes (form_view, form_design, form_select) that are not included in the default authorization.\n\nList Forms\n\nGET /getresponse/v3/forms\n\nGet Form\n\nGET /getresponse/v3/forms/{formId}"
      },
      {
        "title": "Webforms",
        "body": "List Webforms\n\nGET /getresponse/v3/webforms\n\nGet Webform\n\nGET /getresponse/v3/webforms/{webformId}"
      },
      {
        "title": "SMS Messages",
        "body": "List SMS Messages\n\nGET /getresponse/v3/sms\n\nSend SMS\n\nPOST /getresponse/v3/sms\nContent-Type: application/json\n\n{\n  \"recipients\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"content\": {\n    \"message\": \"Your SMS message content\"\n  },\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nGet SMS Message\n\nGET /getresponse/v3/sms/{smsId}\n\nGet SMS Statistics\n\nGET /getresponse/v3/statistics/sms/{smsId}"
      },
      {
        "title": "Shops (Ecommerce)",
        "body": "List Shops\n\nGET /getresponse/v3/shops\n\nCreate Shop\n\nPOST /getresponse/v3/shops\nContent-Type: application/json\n\n{\n  \"name\": \"My Store\",\n  \"locale\": \"en_US\",\n  \"currency\": \"USD\"\n}\n\nGet Shop\n\nGET /getresponse/v3/shops/{shopId}\n\nList Products\n\nGET /getresponse/v3/shops/{shopId}/products\n\nCreate Product\n\nPOST /getresponse/v3/shops/{shopId}/products\nContent-Type: application/json\n\n{\n  \"name\": \"Product Name\",\n  \"url\": \"https://example.com/product\",\n  \"variants\": [\n    {\n      \"name\": \"Default\",\n      \"price\": 29.99,\n      \"priceTax\": 32.99\n    }\n  ]\n}\n\nList Orders\n\nGET /getresponse/v3/shops/{shopId}/orders\n\nCreate Order\n\nPOST /getresponse/v3/shops/{shopId}/orders\nContent-Type: application/json\n\n{\n  \"contactId\": \"abc123\",\n  \"totalPrice\": 99.99,\n  \"currency\": \"USD\",\n  \"status\": \"completed\"\n}"
      },
      {
        "title": "Webinars",
        "body": "List Webinars\n\nGET /getresponse/v3/webinars\n\nGet Webinar\n\nGET /getresponse/v3/webinars/{webinarId}"
      },
      {
        "title": "Landing Pages",
        "body": "List Landing Pages\n\nGET /getresponse/v3/lps\n\nGet Landing Page\n\nGET /getresponse/v3/lps/{lpsId}\n\nGet Landing Page Statistics\n\nGET /getresponse/v3/statistics/lps/{lpsId}/performance"
      },
      {
        "title": "Pagination",
        "body": "Use page and perPage query parameters for pagination:\n\nGET /getresponse/v3/contacts?page=1&perPage=100\n\npage - Page number (starts at 1)\nperPage - Number of records per page (max 1000)\n\nResponse headers include pagination info:\n\nTotalCount - Total number of records\nTotalPages - Total number of pages\nCurrentPage - Current page number"
      },
      {
        "title": "JavaScript",
        "body": "const response = await fetch(\n  'https://gateway.maton.ai/getresponse/v3/contacts?perPage=10',\n  {\n    headers: {\n      'Authorization': `Bearer ${process.env.MATON_API_KEY}`\n    }\n  }\n);\nconst contacts = await response.json();"
      },
      {
        "title": "Python",
        "body": "import os\nimport requests\n\nresponse = requests.get(\n    'https://gateway.maton.ai/getresponse/v3/contacts',\n    headers={'Authorization': f'Bearer {os.environ[\"MATON_API_KEY\"]}'},\n    params={'perPage': 10}\n)\ncontacts = response.json()"
      },
      {
        "title": "Notes",
        "body": "Campaign IDs and Contact IDs are alphanumeric strings\nAll timestamps use ISO 8601 format (e.g., 2026-02-15T10:00:00Z)\nField names use camelCase\nRate limits: 30,000 requests per 10 minutes, 80 requests per second\nIMPORTANT: When using curl commands, use curl -g when URLs contain brackets to disable glob parsing\nIMPORTANT: When piping curl output to jq or other commands, environment variables like $MATON_API_KEY may not expand correctly in some shell environments"
      },
      {
        "title": "Error Handling",
        "body": "StatusMeaning400Missing GetResponse connection or invalid request401Invalid or missing Maton API key404Resource not found409Conflict (e.g., contact already exists)429Rate limited4xx/5xxPassthrough error from GetResponse API"
      },
      {
        "title": "Troubleshooting: API Key Issues",
        "body": "Check that the MATON_API_KEY environment variable is set:\n\necho $MATON_API_KEY\n\nVerify the API key is valid by listing connections:\n\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF"
      },
      {
        "title": "Troubleshooting: Invalid App Name",
        "body": "Ensure your URL path starts with getresponse. For example:\n\nCorrect: https://gateway.maton.ai/getresponse/v3/contacts\nIncorrect: https://gateway.maton.ai/v3/contacts"
      },
      {
        "title": "Resources",
        "body": "GetResponse API Documentation\nGetResponse OpenAPI Spec\nMaton Community\nMaton Support"
      }
    ],
    "body": "GetResponse\n\nAccess the GetResponse API with managed OAuth authentication. Manage email marketing campaigns, contacts, newsletters, autoresponders, segments, and forms.\n\nQuick Start\n# List campaigns\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://gateway.maton.ai/getresponse/v3/campaigns')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nBase URL\nhttps://gateway.maton.ai/getresponse/{native-api-path}\n\n\nReplace {native-api-path} with the actual GetResponse API endpoint path. The gateway proxies requests to api.getresponse.com and automatically injects your OAuth token.\n\nAuthentication\n\nAll requests require the Maton API key in the Authorization header:\n\nAuthorization: Bearer $MATON_API_KEY\n\n\nEnvironment Variable: Set your API key as MATON_API_KEY:\n\nexport MATON_API_KEY=\"YOUR_API_KEY\"\n\nGetting Your API Key\nSign in or create an account at maton.ai\nGo to maton.ai/settings\nCopy your API key\nConnection Management\n\nManage your GetResponse OAuth connections at https://ctrl.maton.ai.\n\nList Connections\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections?app=getresponse&status=ACTIVE')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nCreate Connection\npython <<'EOF'\nimport urllib.request, os, json\ndata = json.dumps({'app': 'getresponse'}).encode()\nreq = urllib.request.Request('https://ctrl.maton.ai/connections', data=data, method='POST')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nreq.add_header('Content-Type', 'application/json')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nGet Connection\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\n\nResponse:\n\n{\n  \"connection\": {\n    \"connection_id\": \"21fd90f9-5935-43cd-b6c8-bde9d915ca80\",\n    \"status\": \"ACTIVE\",\n    \"creation_time\": \"2025-12-08T07:20:53.488460Z\",\n    \"last_updated_time\": \"2026-01-31T20:03:32.593153Z\",\n    \"url\": \"https://connect.maton.ai/?session_token=...\",\n    \"app\": \"getresponse\",\n    \"metadata\": {}\n  }\n}\n\n\nOpen the returned url in a browser to complete OAuth authorization.\n\nDelete Connection\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}', method='DELETE')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nSpecifying Connection\n\nIf you have multiple GetResponse connections, specify which one to use with the Maton-Connection header:\n\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://gateway.maton.ai/getresponse/v3/campaigns')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nreq.add_header('Maton-Connection', '21fd90f9-5935-43cd-b6c8-bde9d915ca80')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\n\nIf omitted, the gateway uses the default (oldest) active connection.\n\nAPI Reference\nAccount Operations\nGet Account Details\nGET /getresponse/v3/accounts\n\nGet Billing Info\nGET /getresponse/v3/accounts/billing\n\nCampaign Operations\n\nCampaigns in GetResponse are equivalent to email lists/audiences.\n\nList Campaigns\nGET /getresponse/v3/campaigns\n\n\nWith pagination:\n\nGET /getresponse/v3/campaigns?page=1&perPage=100\n\nGet Campaign\nGET /getresponse/v3/campaigns/{campaignId}\n\nCreate Campaign\nPOST /getresponse/v3/campaigns\nContent-Type: application/json\n\n{\n  \"name\": \"My Campaign\"\n}\n\nContact Operations\nList Contacts\nGET /getresponse/v3/contacts\n\n\nWith campaign filter:\n\nGET /getresponse/v3/contacts?query[campaignId]={campaignId}\n\n\nWith pagination:\n\nGET /getresponse/v3/contacts?page=1&perPage=100\n\n\nWith sorting:\n\nGET /getresponse/v3/contacts?sort[createdOn]=desc\n\nGet Contact\nGET /getresponse/v3/contacts/{contactId}\n\nCreate Contact\nPOST /getresponse/v3/contacts\nContent-Type: application/json\n\n{\n  \"email\": \"john@example.com\",\n  \"name\": \"John Doe\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"customFieldValues\": [\n    {\n      \"customFieldId\": \"xyz789\",\n      \"value\": [\"Custom Value\"]\n    }\n  ]\n}\n\nUpdate Contact\nPOST /getresponse/v3/contacts/{contactId}\nContent-Type: application/json\n\n{\n  \"name\": \"John Smith\",\n  \"customFieldValues\": [\n    {\n      \"customFieldId\": \"xyz789\",\n      \"value\": [\"Updated Value\"]\n    }\n  ]\n}\n\nDelete Contact\nDELETE /getresponse/v3/contacts/{contactId}\n\nGet Contact Activities\nGET /getresponse/v3/contacts/{contactId}/activities\n\nCustom Fields\nList Custom Fields\nGET /getresponse/v3/custom-fields\n\nGet Custom Field\nGET /getresponse/v3/custom-fields/{customFieldId}\n\nCreate Custom Field\nPOST /getresponse/v3/custom-fields\nContent-Type: application/json\n\n{\n  \"name\": \"company\",\n  \"type\": \"text\",\n  \"hidden\": false,\n  \"values\": []\n}\n\nNewsletter Operations\nList Newsletters\nGET /getresponse/v3/newsletters\n\nSend Newsletter\nPOST /getresponse/v3/newsletters\nContent-Type: application/json\n\n{\n  \"subject\": \"Newsletter Subject\",\n  \"name\": \"Internal Newsletter Name\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"content\": {\n    \"html\": \"<html><body>Newsletter content</body></html>\",\n    \"plain\": \"Newsletter content\"\n  },\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nSend Draft Newsletter\nPOST /getresponse/v3/newsletters/send-draft\nContent-Type: application/json\n\n{\n  \"messageId\": \"newsletter123\",\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nList RSS Newsletters\nGET /getresponse/v3/rss-newsletters\n\nTags\nList Tags\nGET /getresponse/v3/tags\n\nGet Tag\nGET /getresponse/v3/tags/{tagId}\n\nCreate Tag\nPOST /getresponse/v3/tags\nContent-Type: application/json\n\n{\n  \"name\": \"VIP Customer\"\n}\n\nUpdate Tag\nPOST /getresponse/v3/tags/{tagId}\nContent-Type: application/json\n\n{\n  \"name\": \"Premium Customer\"\n}\n\nDelete Tag\nDELETE /getresponse/v3/tags/{tagId}\n\nAssign Tags to Contact\nPOST /getresponse/v3/contacts/{contactId}/tags\nContent-Type: application/json\n\n{\n  \"tags\": [\n    {\"tagId\": \"abc123\"},\n    {\"tagId\": \"xyz789\"}\n  ]\n}\n\nAutoresponders\nList Autoresponders\nGET /getresponse/v3/autoresponders\n\nGet Autoresponder\nGET /getresponse/v3/autoresponders/{autoresponderId}\n\nCreate Autoresponder\nPOST /getresponse/v3/autoresponders\nContent-Type: application/json\n\n{\n  \"name\": \"Welcome Email\",\n  \"subject\": \"Welcome to our list!\",\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"triggerSettings\": {\n    \"dayOfCycle\": 0\n  },\n  \"content\": {\n    \"html\": \"<html><body>Welcome!</body></html>\",\n    \"plain\": \"Welcome!\"\n  }\n}\n\nUpdate Autoresponder\nPOST /getresponse/v3/autoresponders/{autoresponderId}\nContent-Type: application/json\n\n{\n  \"subject\": \"Updated Welcome Email\"\n}\n\nDelete Autoresponder\nDELETE /getresponse/v3/autoresponders/{autoresponderId}\n\nGet Autoresponder Statistics\nGET /getresponse/v3/autoresponders/{autoresponderId}/statistics\n\nGet All Autoresponder Statistics\nGET /getresponse/v3/autoresponders/statistics\n\nFrom Fields\nList From Fields\nGET /getresponse/v3/from-fields\n\nGet From Field\nGET /getresponse/v3/from-fields/{fromFieldId}\n\nTransactional Emails\n\nNote: Transactional email endpoints may require additional OAuth scopes that are not included in the default authorization.\n\nList Transactional Emails\nGET /getresponse/v3/transactional-emails\n\nSend Transactional Email\nPOST /getresponse/v3/transactional-emails\nContent-Type: application/json\n\n{\n  \"fromField\": {\n    \"fromFieldId\": \"abc123\"\n  },\n  \"subject\": \"Your Order Confirmation\",\n  \"recipients\": {\n    \"to\": \"customer@example.com\"\n  },\n  \"content\": {\n    \"html\": \"<html><body>Order confirmed!</body></html>\",\n    \"plain\": \"Order confirmed!\"\n  }\n}\n\nGet Transactional Email\nGET /getresponse/v3/transactional-emails/{transactionalEmailId}\n\nGet Transactional Email Statistics\nGET /getresponse/v3/transactional-emails/statistics\n\nImports\nList Imports\nGET /getresponse/v3/imports\n\nCreate Import\nPOST /getresponse/v3/imports\nContent-Type: application/json\n\n{\n  \"campaign\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"contacts\": [\n    {\n      \"email\": \"user1@example.com\",\n      \"name\": \"User One\"\n    },\n    {\n      \"email\": \"user2@example.com\",\n      \"name\": \"User Two\"\n    }\n  ]\n}\n\nGet Import\nGET /getresponse/v3/imports/{importId}\n\nWorkflows (Automations)\nList Workflows\nGET /getresponse/v3/workflow\n\nGet Workflow\nGET /getresponse/v3/workflow/{workflowId}\n\nUpdate Workflow\nPOST /getresponse/v3/workflow/{workflowId}\nContent-Type: application/json\n\n{\n  \"status\": \"enabled\"\n}\n\nSegments (Search Contacts)\nList Segments\nGET /getresponse/v3/search-contacts\n\nCreate Segment\nPOST /getresponse/v3/search-contacts\nContent-Type: application/json\n\n{\n  \"name\": \"Active Subscribers\",\n  \"subscribersType\": [\"subscribed\"],\n  \"sectionLogicOperator\": \"or\",\n  \"section\": []\n}\n\nGet Segment\nGET /getresponse/v3/search-contacts/{searchContactId}\n\nUpdate Segment\nPOST /getresponse/v3/search-contacts/{searchContactId}\nContent-Type: application/json\n\n{\n  \"name\": \"Updated Segment Name\"\n}\n\nDelete Segment\nDELETE /getresponse/v3/search-contacts/{searchContactId}\n\nGet Contacts from Segment\nGET /getresponse/v3/search-contacts/{searchContactId}/contacts\n\nSearch Contacts Without Saving\nPOST /getresponse/v3/search-contacts/contacts\nContent-Type: application/json\n\n{\n  \"subscribersType\": [\"subscribed\"],\n  \"sectionLogicOperator\": \"or\",\n  \"section\": []\n}\n\nForms\n\nNote: Forms endpoints may require additional OAuth scopes (form_view, form_design, form_select) that are not included in the default authorization.\n\nList Forms\nGET /getresponse/v3/forms\n\nGet Form\nGET /getresponse/v3/forms/{formId}\n\nWebforms\nList Webforms\nGET /getresponse/v3/webforms\n\nGet Webform\nGET /getresponse/v3/webforms/{webformId}\n\nSMS Messages\nList SMS Messages\nGET /getresponse/v3/sms\n\nSend SMS\nPOST /getresponse/v3/sms\nContent-Type: application/json\n\n{\n  \"recipients\": {\n    \"campaignId\": \"abc123\"\n  },\n  \"content\": {\n    \"message\": \"Your SMS message content\"\n  },\n  \"sendOn\": \"2026-02-15T10:00:00Z\"\n}\n\nGet SMS Message\nGET /getresponse/v3/sms/{smsId}\n\nGet SMS Statistics\nGET /getresponse/v3/statistics/sms/{smsId}\n\nShops (Ecommerce)\nList Shops\nGET /getresponse/v3/shops\n\nCreate Shop\nPOST /getresponse/v3/shops\nContent-Type: application/json\n\n{\n  \"name\": \"My Store\",\n  \"locale\": \"en_US\",\n  \"currency\": \"USD\"\n}\n\nGet Shop\nGET /getresponse/v3/shops/{shopId}\n\nList Products\nGET /getresponse/v3/shops/{shopId}/products\n\nCreate Product\nPOST /getresponse/v3/shops/{shopId}/products\nContent-Type: application/json\n\n{\n  \"name\": \"Product Name\",\n  \"url\": \"https://example.com/product\",\n  \"variants\": [\n    {\n      \"name\": \"Default\",\n      \"price\": 29.99,\n      \"priceTax\": 32.99\n    }\n  ]\n}\n\nList Orders\nGET /getresponse/v3/shops/{shopId}/orders\n\nCreate Order\nPOST /getresponse/v3/shops/{shopId}/orders\nContent-Type: application/json\n\n{\n  \"contactId\": \"abc123\",\n  \"totalPrice\": 99.99,\n  \"currency\": \"USD\",\n  \"status\": \"completed\"\n}\n\nWebinars\nList Webinars\nGET /getresponse/v3/webinars\n\nGet Webinar\nGET /getresponse/v3/webinars/{webinarId}\n\nLanding Pages\nList Landing Pages\nGET /getresponse/v3/lps\n\nGet Landing Page\nGET /getresponse/v3/lps/{lpsId}\n\nGet Landing Page Statistics\nGET /getresponse/v3/statistics/lps/{lpsId}/performance\n\nPagination\n\nUse page and perPage query parameters for pagination:\n\nGET /getresponse/v3/contacts?page=1&perPage=100\n\npage - Page number (starts at 1)\nperPage - Number of records per page (max 1000)\n\nResponse headers include pagination info:\n\nTotalCount - Total number of records\nTotalPages - Total number of pages\nCurrentPage - Current page number\nCode Examples\nJavaScript\nconst response = await fetch(\n  'https://gateway.maton.ai/getresponse/v3/contacts?perPage=10',\n  {\n    headers: {\n      'Authorization': `Bearer ${process.env.MATON_API_KEY}`\n    }\n  }\n);\nconst contacts = await response.json();\n\nPython\nimport os\nimport requests\n\nresponse = requests.get(\n    'https://gateway.maton.ai/getresponse/v3/contacts',\n    headers={'Authorization': f'Bearer {os.environ[\"MATON_API_KEY\"]}'},\n    params={'perPage': 10}\n)\ncontacts = response.json()\n\nNotes\nCampaign IDs and Contact IDs are alphanumeric strings\nAll timestamps use ISO 8601 format (e.g., 2026-02-15T10:00:00Z)\nField names use camelCase\nRate limits: 30,000 requests per 10 minutes, 80 requests per second\nIMPORTANT: When using curl commands, use curl -g when URLs contain brackets to disable glob parsing\nIMPORTANT: When piping curl output to jq or other commands, environment variables like $MATON_API_KEY may not expand correctly in some shell environments\nError Handling\nStatus\tMeaning\n400\tMissing GetResponse connection or invalid request\n401\tInvalid or missing Maton API key\n404\tResource not found\n409\tConflict (e.g., contact already exists)\n429\tRate limited\n4xx/5xx\tPassthrough error from GetResponse API\nTroubleshooting: API Key Issues\nCheck that the MATON_API_KEY environment variable is set:\necho $MATON_API_KEY\n\nVerify the API key is valid by listing connections:\npython <<'EOF'\nimport urllib.request, os, json\nreq = urllib.request.Request('https://ctrl.maton.ai/connections')\nreq.add_header('Authorization', f'Bearer {os.environ[\"MATON_API_KEY\"]}')\nprint(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))\nEOF\n\nTroubleshooting: Invalid App Name\nEnsure your URL path starts with getresponse. For example:\nCorrect: https://gateway.maton.ai/getresponse/v3/contacts\nIncorrect: https://gateway.maton.ai/v3/contacts\nResources\nGetResponse API Documentation\nGetResponse OpenAPI Spec\nMaton Community\nMaton Support"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/byungkyu/getresponse",
    "publisherUrl": "https://clawhub.ai/byungkyu/getresponse",
    "owner": "byungkyu",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/getresponse",
    "downloadUrl": "https://openagent3.xyz/downloads/getresponse",
    "agentUrl": "https://openagent3.xyz/skills/getresponse/agent",
    "manifestUrl": "https://openagent3.xyz/skills/getresponse/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/getresponse/agent.md"
  }
}