AWeber Webforms API

### What is it? Represents the collection of sign-up forms associated with the AWeber Customer Account's lists. Webforms are sets of customized HTML and javascript that are used to put up a sign-up forms on a customer's website. The Webform can be modified in the AWeber Control Panel and if you include the javascript source link on any web page, that form will be displayed. Webforms can also be subject to split-tests to compare conversion effectiveness. Webforms that belong to a split test are listed as *components* of the split test and can be retrieved by following the `components_collection_link` of the split test. The statistics of each component include only displays of that Webform where it was displayed from a split test. Use this set of resources to retrieve information about the available sign-up forms and associated split tests. The collection responses are sorted by the appropriate identifier and paginated using `next_collection_link` and `prev_collection_link` properties. See [How Collections are Represented](#collection-representation) for details on collection traversal. ### Related endpoints * [Webforms](#tag/Webforms) ### Related code examples * [Get Webforms Detail](#tag/Get-Webforms-Detail)

Operations 8

GET /accounts/{accountId}?ws.op=getWebForms Get webforms for account #
GET /accounts/{accountId}?ws.op=getWebFormSplitTests Get split tests for account #
GET /accounts/{accountId}/lists/{listId}/web_forms Get webforms for list #
GET /accounts/{accountId}/lists/{listId}/web_forms/{webformId} Get webform for list #
GET /accounts/{accountId}/lists/{listId}/web_form_split_tests Get split tests for list #
GET /accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId} Get split test for list #
GET /accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId}/components Get split test components #
GET /accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId}/components/{splitTestComponentId} Get split test component #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/aweber-webforms-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

aweber-webforms-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AWeber Web Forms Webforms API
  version: '1.0'
  description: 'We are constantly working to improve this documentation. If you have

    feedback and questions, please contact the AWeber API team at

    api@aweber.com.


    The AWeber API is a REST API that uses the OAuth 2.0 authentication model. We also offer webhooks.


    Please see the below resources for further information:

    - <a href="https://labs.aweber.com/docs/tos" target="_blank">Terms of Service</a>

    - <a href="https://help.aweber.com/hc/en-us/articles/204031776" target="_blank">Showcasing an Integration</a>

    - <a href="https://help.aweber.com/hc/en-us/sections/360000617213-API" target="_blank">Knowledge Base</a>

    - <a href="https://status.aweber.com" target="_blank">API Status Page</a>

    '
  contact:
    name: AWeber API Team
    email: api@aweber.com
    url: https://api.aweber.com/
servers:
- url: https://api.aweber.com/1.0
  description: v1 API endpoints
security:
- OAuth 2.0: []
tags:
- name: Webforms
  description: '### What is it?


    Represents the collection of sign-up forms associated with the AWeber Customer

    Account''s lists.


    Webforms are sets of customized HTML and javascript that are used to put up a sign-up forms

    on a customer''s website.  The Webform can be modified in the AWeber Control Panel and if you

    include the javascript source link on any web page, that form will be displayed.


    Webforms can also be subject to split-tests to compare conversion effectiveness.  Webforms that

    belong to a split test are listed as *components* of the split test and can be retrieved by

    following the `components_collection_link` of the split test. The statistics of each component

    include only displays of that Webform where it was displayed from a split test.


    Use this set of resources to retrieve information about the available sign-up forms and associated

    split tests.  The collection responses are sorted by the appropriate identifier and paginated using

    `next_collection_link` and `prev_collection_link` properties. See

    [How Collections are Represented](#collection-representation) for details on collection traversal.


    ### Related endpoints


    * [Webforms](#tag/Webforms)


    ### Related code examples


    * [Get Webforms Detail](#tag/Get-Webforms-Detail)

    '
paths:
  /accounts/{accountId}?ws.op=getWebForms:
    get:
      summary: Get webforms for account
      description: "This endpoint is used to retrieve webforms for all lists on an account.\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - name: ws.op
        in: query
        required: true
        description: The method name - expecting "getWebForms"
        schema:
          type: string
          enum:
          - getWebForms
      - name: ws.size
        in: query
        required: true
        description: The pagination total entries to retrieve
        schema:
          type: integer
          format: int32
          minimum: 1
          maximum: 100
          default: 100
      - name: ws.start
        in: query
        required: true
        description: The pagination starting offset
        schema:
          type: integer
          format: int32
          minimum: 0
          default: 0
      security:
      - OAuth 2.0:
        - list.read
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId} \\\n  -d ws.op=getWebForms \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = f'https://api.aweber.com/1.0/accounts/{account_id}'\nparams = urlencode({'ws.op': 'getWebForms'})\nsubs_url = '{}?{}'.format(url, params)\nresponse = requests.get(subs_url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}\";\n$params = ['ws.op' => 'getWebForms'];\n$subsUrl = $url . '?' . http_build_query($params);\n$response = $client->get($subsUrl, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: "const string url = \"https://api.aweber.com/1.0/accounts/{accountId}\";\nvar queryParams = new Dictionary<string, string>\n{\n  {\"ws.op\", \"getWebForms\"}\n};\nvar encodedQueryParams = string.Join(\"&\", queryParams.Select(\n  kvp => string.Format(\"{0}={1}\", kvp.Key, Uri.EscapeDataString(kvp.Value))));\nvar getUrl = string.Format(\"{0}?{1}\", url, encodedQueryParams);\nvar request = new HttpRequestMessage(HttpMethod.Get, getUrl);\nrequest.Headers.Add(\"Accept\",\"application/json\");\nrequest.Headers.Add(\"User-Agent\",\"AWeber-CSharp-code-sample/1.0\");\nrequest.Headers.Add(\"Authorization\", $\"Bearer {Token}\");\nvar response = await Client.SendAsync(request);\nConsole.Write(response.Content.ReadAsStringAsync());\n"
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nquerystring = require(\"querystring\");\nconst params = querystring.stringify({\n  'ws.op': 'getWebForms'\n});\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}?${params}`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}\", {\n    'ws.op': 'getWebForms'\n  }\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webforms'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getWebformsForAccount
  /accounts/{accountId}?ws.op=getWebFormSplitTests:
    get:
      summary: Get split tests for account
      description: "This endpoint is used to retrieve webform split tests for all lists on an account.\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - name: ws.op
        in: query
        required: true
        description: The method name - expecting "getWebFormSplitTests"
        schema:
          type: string
          enum:
          - getWebFormSplitTests
      - name: ws.size
        in: query
        required: true
        description: The pagination total entries to retrieve
        schema:
          type: integer
          format: int32
          minimum: 1
          maximum: 100
          default: 100
      - name: ws.start
        in: query
        required: true
        description: The pagination starting offset
        schema:
          type: integer
          format: int32
          minimum: 0
          default: 0
      security:
      - OAuth 2.0:
        - list.read
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId} \\\n  -d ws.op=getWebFormSplitTests \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = f'https://api.aweber.com/1.0/accounts/{account_id}'\nparams = urlencode({'ws.op': 'getWebFormSplitTests'})\nsubs_url = '{}?{}'.format(url, params)\nresponse = requests.get(subs_url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}\";\n$params = ['ws.op' => 'getWebFormSplitTests'];\n$subsUrl = $url . '?' . http_build_query($params);\n$response = $client->get($subsUrl, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: "const string url = \"https://api.aweber.com/1.0/accounts/{accountId}\";\nvar queryParams = new Dictionary<string, string>\n{\n  {\"ws.op\", \"getWebFormSplitTests\"}\n};\nvar encodedQueryParams = string.Join(\"&\", queryParams.Select(\n  kvp => string.Format(\"{0}={1}\", kvp.Key, Uri.EscapeDataString(kvp.Value))));\nvar getUrl = string.Format(\"{0}?{1}\", url, encodedQueryParams);\nvar request = new HttpRequestMessage(HttpMethod.Get, getUrl);\nrequest.Headers.Add(\"Accept\",\"application/json\");\nrequest.Headers.Add(\"User-Agent\",\"AWeber-CSharp-code-sample/1.0\");\nrequest.Headers.Add(\"Authorization\", $\"Bearer {Token}\");\nvar response = await Client.SendAsync(request);\nConsole.Write(response.Content.ReadAsStringAsync());\n"
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nquerystring = require(\"querystring\");\nconst params = querystring.stringify({\n  'ws.op': 'getWebFormSplitTests'\n});\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}?${params}`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}\", {\n    'ws.op': 'getWebFormSplitTests'\n  }\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebFormSplitTests'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getSplitTestsForAccount
  /accounts/{accountId}/lists/{listId}/web_forms:
    get:
      summary: Get webforms for list
      description: "This endpoint is used to retrieve a collection of webforms for a list\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - $ref: '#/components/parameters/listId'
      - $ref: '#/components/parameters/wsStart'
      - $ref: '#/components/parameters/wsSize'
      security:
      - OAuth 2.0:
        - list.read
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_forms \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = (f'https://api.aweber.com/1.0/accounts/{account_id}'\n       f'/lists/{list_id}/web_forms')\nresponse = requests.get(url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}/lists/{$listId}/web_forms\";\n$response = $client->get($url, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: 'const string url = "https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_forms";

          var request = new HttpRequestMessage(HttpMethod.Get, url);

          request.Headers.Add("Accept","application/json");

          request.Headers.Add("User-Agent","AWeber-CSharp-code-sample/1.0");

          request.Headers.Add("Authorization", $"Bearer {Token}");

          var response = await Client.SendAsync(request);

          Console.Write(response.Content.ReadAsStringAsync());

          '
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}/lists/${listId}/web_forms`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}/\" \\\n  \"lists/#{list_id}/web_forms\"\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webforms'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getWebformsForList
  /accounts/{accountId}/lists/{listId}/web_forms/{webformId}:
    get:
      summary: Get webform for list
      description: "This endpoint is used to retrieve single webform for a list\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - $ref: '#/components/parameters/listId'
      - $ref: '#/components/parameters/webformId'
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_forms/{webformId} \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = (f'https://api.aweber.com/1.0/accounts/{account_id}'\n       f'/lists/{list_id}/web_forms/{webform_id}')\nresponse = requests.get(url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}/lists/{$listId}/web_forms/{$webformId}\";\n$response = $client->get($url, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: 'const string url = "https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_forms/{webformId}";

          var request = new HttpRequestMessage(HttpMethod.Get, url);

          request.Headers.Add("Accept","application/json");

          request.Headers.Add("User-Agent","AWeber-CSharp-code-sample/1.0");

          request.Headers.Add("Authorization", $"Bearer {Token}");

          var response = await Client.SendAsync(request);

          Console.Write(response.Content.ReadAsStringAsync());

          '
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}/lists/${listId}/web_forms/${webFormId}`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}/\" \\\n  \"lists/#{list_id}/web_forms/#{web_form_id}\"\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webform'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getWebformForList
  /accounts/{accountId}/lists/{listId}/web_form_split_tests:
    get:
      summary: Get split tests for list
      description: "This endpoint is used to retrieve webform split tests for a list.\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - $ref: '#/components/parameters/listId'
      - $ref: '#/components/parameters/wsStart'
      - $ref: '#/components/parameters/wsSize'
      security:
      - OAuth 2.0:
        - list.read
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_form_split_tests \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = (f'https://api.aweber.com/1.0/accounts/{account_id}'\n       f'/lists/{list_id}/web_form_split_tests')\nresponse = requests.get(url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}/lists/{$listId}/web_form_split_tests\";\n$response = $client->get($url, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: 'const string url = "https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_form_split_tests";

          var request = new HttpRequestMessage(HttpMethod.Get, url);

          request.Headers.Add("Accept","application/json");

          request.Headers.Add("User-Agent","AWeber-CSharp-code-sample/1.0");

          request.Headers.Add("Authorization", $"Bearer {Token}");

          var response = await Client.SendAsync(request);

          Console.Write(response.Content.ReadAsStringAsync());

          '
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}/lists/${listId}/web_form_split_tests`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}/\" \\\n  \"lists/#{list_id}/web_form_split_tests\"\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebFormSplitTests'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getSplitTestsForList
  /accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId}:
    get:
      summary: Get split test for list
      description: "This endpoint is used to retrieve a specific webform split test.\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accountId'
      - $ref: '#/components/parameters/listId'
      - $ref: '#/components/parameters/splitTestId'
      security:
      - OAuth 2.0:
        - list.read
      x-code-samples:
      - lang: Shell
        source: "curl -G \\\n  https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId} \\\n  -H 'Authorization: Bearer {YOUR_ACCESS_TOKEN}'\n"
      - lang: Python
        source: "headers = {'Accept': 'application/json',\n           'User-Agent': 'AWeber-Python-code-sample/1.0',\n           'Authorization': f'Bearer {access_token}'}\nurl = (f'https://api.aweber.com/1.0/accounts/{account_id}'\n       f'/lists/{list_id}/web_form_split_tests/{split_test_id}')\nresponse = requests.get(url, headers=headers)\nprint(response.json())\n"
      - lang: PHP
        source: "$headers = [\n    'User-Agent' => 'AWeber-PHP-code-sample/1.0',\n    'Accept' => 'application/json',\n    'Authorization' => 'Bearer $token',\n];\n$url = \"https://api.aweber.com/1.0/accounts/{$accountId}/lists/{$listId}/web_form_split_tests/{$splitTestId}\";\n$response = $client->get($url, ['headers' => $headers]);\n$body = json_decode($response->getBody(), true);\nprint_r($body);\n"
      - lang: C#
        source: 'const string url = "https://api.aweber.com/1.0/accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId}";

          var request = new HttpRequestMessage(HttpMethod.Get, url);

          request.Headers.Add("Accept","application/json");

          request.Headers.Add("User-Agent","AWeber-CSharp-code-sample/1.0");

          request.Headers.Add("Authorization", $"Bearer {Token}");

          var response = await Client.SendAsync(request);

          Console.Write(response.Content.ReadAsStringAsync());

          '
      - lang: JavaScript
        label: Node.js
        source: "const headers = {\n  \"Accept\": \"application/json\",\n  \"User-Agent\": \"AWeber-Node-code-sample/1.0\",\n  \"Authorization\": `Bearer ${accessToken}`\n};\nconst url = `https://api.aweber.com/1.0/accounts/${accountId}/lists/${listId}/web_form_split_tests/${splitTestId}`;\nfetch(url, { headers: headers })\n  .then(response => response.json())\n  .then(data => {\n    console.log(data)\n})\n"
      - lang: Ruby
        source: "headers = {\n  'Accept': 'application/json',\n  'User-Agent': 'AWeber-Ruby-code-sample/1.0',\n  'Authorization': \"Bearer #{access_token}\"\n}\nresponse = Faraday.get(\n  \"https://api.aweber.com/1.0/accounts/#{account_id}/\" \\\n  \"lists/#{list_id}/web_form_split_tests/#{split_test_id}\"\n) do |req|\n  req.headers = headers\nend\nputs response.body\n"
      responses:
        '200':
          description: The request completed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebformSplitTest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFound'
        '405':
          $ref: '#/components/responses/NotAllowed'
        '410':
          $ref: '#/components/responses/BlockedError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      operationId: getSplitTestForList
  /accounts/{accountId}/lists/{listId}/web_form_split_tests/{splitTestId}/components:
    get:
      summary: Get split test components
      description: "This endpoint is used to retrieve a collection of webform split test components.\n\nCheck out related examples:\n\n  * Get Webforms Detail (\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/python/get-webforms-detail\" target=\"_blank\">Python</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/php/get-webforms-detail\" target=\"_blank\">PHP</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/postman/Get%20Webforms%20Detail.postman_collection.json\" target=\"_blank\">Postman</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/csharp/AWeber.Example.GetWebformsDetail\" target=\"_blank\">C#.NET</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/ruby/get_webforms_details.rb\" target=\"_blank\">Ruby</a> |\n    <a href=\"https://github.com/aweber/public-api-examples/blob/master/node/get-webforms-details.js\" target=\"_blank\">Node.js</a> )"
      tags:
      - Webforms
      parameters:
      - $ref: '#/components/parameters/accou

# --- truncated at 32 KB (66 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aweber/refs/heads/main/openapi/aweber-webforms-api-openapi.yml