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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/getresponse-forms-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: GetResponse APIv3 Forms API
version: 3.2026-07-28T07:58:55+00:00
description: The Forms operations of the GetResponse APIv3, split by tag from the provider-published OpenAPI at https://apireference.getresponse.com/open-api.json
contact:
name: API Support - DevZone
url: https://app.getresponse.com/feedback.html?devzone=yes
email: getresponse-devzone@cs.getresponse.com
servers:
- url: https://api.getresponse.com/v3
description: GetResponse
- url: https://api3.getresponse360.com/v3
description: GetResponse MAX US
- url: https://api3.getresponse360.pl/v3
description: GetResponse MAX PL
tags:
- name: Forms
description: Forms API documentation
paths:
/forms/{formId}:
parameters:
- $ref: '#/components/parameters/formId'
get:
tags:
- Forms
summary: Get form by ID
operationId: getForm
parameters:
- $ref: '#/components/parameters/Fields'
responses:
'200':
$ref: '#/components/responses/FormDetails'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 404
code: 1013
codeDescription: The requested resource was not found
message: Resource not found
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1013
context:
contactId: pVyRW
uuid: 87b90a96-5ee5-4ca4-8180-ac00adcf62c7
'400':
description: Request validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 400
code: 1000
codeDescription: General error of validation process, more details should be in context section
message: Validation error, see context section for more information
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
context:
validationType: searchFilter[query]
fieldName: name
originalName: lorem-ipsum
errorDescription: Not allowed search field
uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
'401':
description: Authentication error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 401
code: 1014
codeDescription: Problem during authentication process, check headers!
message: Unable to authenticate request. Check credentials or authentication method details
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
context:
authenticationType: auth_token
uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
'429':
description: The throttling limit has been reached
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 429
code: 1015
codeDescription: Too many request to API, quota reached, please wait till next quota window
message: You have reached your requests limit for this time window, please wait...
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
context:
currentLimit: 30000
timeToReset: 100 seconds
uuid: 510c6726-7f65-46b7-a798-ca403133924f
security:
- api-key: []
- oauth2:
- all
/forms/{formId}/variants:
parameters:
- $ref: '#/components/parameters/formId'
get:
tags:
- Forms
summary: Get the list of form variants (A/B tests)
operationId: getFormVariantList
parameters:
- $ref: '#/components/parameters/Fields'
responses:
'200':
$ref: '#/components/responses/FormVariantList'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 404
code: 1013
codeDescription: The requested resource was not found
message: Resource not found
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1013
context:
contactId: pVyRW
uuid: 87b90a96-5ee5-4ca4-8180-ac00adcf62c7
'400':
description: Request validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 400
code: 1000
codeDescription: General error of validation process, more details should be in context section
message: Validation error, see context section for more information
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
context:
validationType: searchFilter[query]
fieldName: name
originalName: lorem-ipsum
errorDescription: Not allowed search field
uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
'401':
description: Authentication error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 401
code: 1014
codeDescription: Problem during authentication process, check headers!
message: Unable to authenticate request. Check credentials or authentication method details
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
context:
authenticationType: auth_token
uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
'429':
description: The throttling limit has been reached
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 429
code: 1015
codeDescription: Too many request to API, quota reached, please wait till next quota window
message: You have reached your requests limit for this time window, please wait...
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
context:
currentLimit: 30000
timeToReset: 100 seconds
uuid: 510c6726-7f65-46b7-a798-ca403133924f
security:
- api-key: []
- oauth2:
- all
/forms:
get:
tags:
- Forms
summary: Get the list of forms.
description: You can filter the resource using criteria specified as `query[*]`. You can provide multiple criteria, to use AND logic. You can sort the resource using parameters specified as `sort[*]`. You can specify multiple fields to sort by.
operationId: getFormList
parameters:
- name: query[name]
in: query
description: Search forms by name
required: false
schema:
type: string
- name: query[createdOn][from]
in: query
description: Search forms created from this date
required: false
schema:
$ref: '#/components/schemas/DateOrDateTime'
- name: query[createdOn][to]
in: query
description: Search forms created to this date
required: false
schema:
$ref: '#/components/schemas/DateOrDateTime'
- name: query[campaignId]
in: query
description: Search forms assigned to this list (campaign). You can pass multiple comma-separated values, eg. `Xd1P,sC7r`
required: false
schema:
type: string
- name: query[status]
in: query
description: Search by status. **Note:** `disabled` includes both `unpublished` and `draft` and `enabled` equals `published`
required: false
schema:
type: string
enum:
- enabled
- disabled
- published
- unpublished
- draft
- name: sort[createdOn]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- name: sort[name]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- name: sort[visitors]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- name: sort[uniqueVisitors]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- name: sort[subscribed]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- name: sort[subscriptionRate]
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrderEnum'
- $ref: '#/components/parameters/Fields'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Page'
responses:
'200':
$ref: '#/components/responses/FormList'
'400':
description: Request validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 400
code: 1000
codeDescription: General error of validation process, more details should be in context section
message: Validation error, see context section for more information
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
context:
validationType: searchFilter[query]
fieldName: name
originalName: lorem-ipsum
errorDescription: Not allowed search field
uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
'401':
description: Authentication error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 401
code: 1014
codeDescription: Problem during authentication process, check headers!
message: Unable to authenticate request. Check credentials or authentication method details
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
context:
authenticationType: auth_token
uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
'429':
description: The throttling limit has been reached
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
example:
value:
httpStatus: 429
code: 1015
codeDescription: Too many request to API, quota reached, please wait till next quota window
message: You have reached your requests limit for this time window, please wait...
moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
context:
currentLimit: 30000
timeToReset: 100 seconds
uuid: 510c6726-7f65-46b7-a798-ca403133924f
security:
- api-key: []
- oauth2:
- all
components:
schemas:
SortOrderEnum:
type: string
enum:
- ASC
- DESC
CampaignReference:
required:
- campaignId
properties:
campaignId:
description: Campaign ID
type: string
example: C
href:
description: Direct hyperlink to a resource
type: string
format: uri
readOnly: true
example: https://api.getresponse.com/v3/campaigns/C
name:
description: The campaign name
type:
- string
- 'null'
readOnly: true
example: Promo campaign
type: object
FormStatistics:
properties:
visitors:
description: The total number of form visitors
type: integer
format: int64
example: 4371
uniqueVisitors:
description: The number of unique form visitors
type: integer
format: int64
example: 3865
subscribed:
description: The number of visitors that subscribed using this form
type: integer
format: int64
example: 2594
subscriptionRate:
description: The ratio of `subscribed` to `visitors`
type: number
format: double
example: 0.59
type: object
FormSettings:
properties:
optin:
description: '`single` - Single opt-in means that the contact will be added without confirming their subscription first. `double` - Double opt-in means that the contact will receive a subscription confirmation email.'
type: string
enum:
- single
- double
example: single
phase:
description: The contact who subscribed via this form will be added to the selected day in the autoresponder cycle. If null, the contact won't be added to the cycle.
type:
- integer
- 'null'
format: int32
maximum: 9999
minimum: 0
example: 5
thankYouType:
description: What should happen when a new contact subscribes via the form.
type: string
enum:
- stay_on_page
- default
- custom_url
example: stay_on_page
thankYouUrl:
description: The URL used to redirect the newly subscribed contacts when they complete this form. Used if `thankYouType` is `custom_url`.
type:
- string
- 'null'
format: uri
example: https://example.com/thank-you
alreadySubscribedType:
description: What to do when the address already exists in the campaign
type: string
enum:
- stay_on_page
- default
- custom_url
example: stay_on_page
alreadySubscribedUrl:
description: The URL used to redirect the already subscribed contacts when they complete this form. Used if `alreadySubscribedType` is `custom_url`.
type:
- string
- 'null'
format: uri
example: https://example.com/thank-you
secondStageCaptcha:
description: Is captcha enabled for the form
allOf:
- $ref: '#/components/schemas/StringBooleanEnum'
forwardDataRequestType:
description: How to forward form data to a thank-you page. [Learn more](https://www.getresponse.com/help/building-contact-lists/forms-and-pop-ups/can-i-forward-subscriber-data-to-a-custom-thank-you-page.html). `null` means that the data forwarding is turned off.
type:
- string
- 'null'
enum:
- GET
- POST
trackingCustomField:
description: Subscribers added via this form will have this custom field set with a value passed in `trackingCustomFieldValue`
type:
- object
- 'null'
allOf:
- $ref: '#/components/schemas/CustomFieldReference'
trackingCustomFieldValue:
description: See the `trackingCustomField` description
type:
- string
- 'null'
example: '123'
type: object
FormDetails:
type: object
allOf:
- properties:
settings:
$ref: '#/components/schemas/FormSettings'
variants:
type: array
items:
$ref: '#/components/schemas/FormVariant'
type: object
- $ref: '#/components/schemas/Form'
StringBooleanEnum:
type: string
enum:
- 'true'
- 'false'
FormVariantDetails:
properties:
formId:
type: string
readOnly: true
example: pL4e
webformId:
description: Same as `formId`
type: string
readOnly: true
example: pL4e
variant:
description: The index of variants
type: string
readOnly: true
example: '0'
variantName:
type: string
example: Variant A
winner:
description: Is this variant the winner in the A/B test
type: string
enum:
- 'yes'
- 'no'
status:
type: string
enum:
- published
- unpublished
- disabled
createdOn:
type: string
format: date-time
example: 2018-07-09T15:45:12+0000
numberOfVisitors:
description: The total number of form visitors
type: integer
format: int64
example: 152
numberOfUniqueVisitors:
description: The number of unique form visitors
type: integer
format: int64
example: 136
numberOfSubscribers:
description: The number of visitors who subscribed through this form
type: integer
format: int64
example: 94
subscriptionRate:
description: The ratio of `numberOfSubscribers` to `numberOfVisitors`
type: number
format: double
example: 0.62
type: object
DateOrDateTime:
oneOf:
- type: string
format: date
example: '2018-04-15'
- type: string
format: date-time
example: 2018-01-15T13:30:42+0000
CustomFieldReference:
properties:
customFieldId:
type: string
readOnly: true
example: pas
name:
description: "\nThe name of the custom field. It must meet the following requirements:\n * be unique\n * use only lowercase letters, underscores and digits: [a-z0-9_]{1,128}\n * not be equal to one of the merge words used in messages, i.e. `name`, `email`, `twitter`, `facebook`, `buzz`, `myspace`, `linkedin`, `digg`, `googleplus`, `pinterest`, `responder`, `campaign`, `change`."
type: string
maxLength: 128
minLength: 1
example: color
values:
description: The list of assigned default values, starting from zero depending on the custom field format. (Please see description).
type: array
items:
type: string
example: red
type: object
Form:
properties:
formId:
type: string
readOnly: true
example: pL4e
webformId:
description: Same as `formId`
type: string
readOnly: true
example: pL4e
name:
type: string
example: My first form
href:
description: Direct hyperlink to a resource
type: string
format: uri
readOnly: true
example: https://api.getresponse.com/v3/forms/pL4e
hasVariants:
description: Indicates if the form has variants (A/B tests)
type: boolean
readOnly: true
example: true
scriptUrl:
description: The URL to a JavaScript file of the form. This is used to embed the form within a web page.
type: string
format: uri
readOnly: true
example: https://app.getresponse.com/view_webform_v2.js?u=nTfa&webforms_id=123
status:
type: string
enum:
- published
- unpublished
- draft
example: published
createdOn:
type: string
format: date-time
example: 2018-07-02T11:22:33+0000
statistics:
$ref: '#/components/schemas/FormStatistics'
campaign:
$ref: '#/components/schemas/CampaignReference'
type: object
ErrorResponse:
required:
- httpStatus
- code
- codeDescription
- message
- moreInfo
- context
- uuid
properties:
httpStatus:
description: HTTP response code
type: integer
format: int32
code:
description: API error code
type: integer
format: int32
codeDescription:
description: API error code description
type: string
message:
description: Error message
type: string
moreInfo:
description: URL to error description in the API Docs
type: string
context:
type: object
uuid:
description: UUID of the error response
type: string
type: object
FormVariant:
properties:
variant:
description: The index of variants
type: string
readOnly: true
example: '0'
variantName:
type: string
example: Variant A
winner:
description: Is this variant the winner in the A/B test
allOf:
- $ref: '#/components/schemas/StringBooleanEnum'
status:
type: string
enum:
- published
- unpublished
- disabled
createdOn:
type: string
format: date-time
example: 2018-07-11T13:37:25+0000
statistics:
$ref: '#/components/schemas/FormStatistics'
type: object
headers:
TotalPages:
description: The total number of pages
schema:
type: integer
format: int32
CurrentPage:
description: The current page number
schema:
type: integer
format: int32
RateLimitRemaining:
description: The number of requests left in the current time frame
schema:
type: integer
format: int32
TotalCount:
description: The total number of resources found for the specified conditions
schema:
type: integer
format: int32
RateLimitLimit:
description: The total number of requests available per time frame
schema:
type: integer
format: int32
RateLimitReset:
description: Seconds left in the current time frame, e.g. "432 seconds"
schema:
type: string
parameters:
PerPage:
name: perPage
in: query
description: Requested number of results per page
required: false
schema:
type: integer
format: int32
default: 100
maximum: 1000
minimum: 1
formId:
name: formId
in: path
description: The form ID
required: true
schema:
type: string
example: pL4e
Page:
name: page
in: query
description: Page number
required: false
schema:
type: integer
format: int32
default: 1
minimum: 1
Fields:
name: fields
in: query
description: List of fields that should be returned. Id is always returned. Fields should be separated by comma
required: false
schema:
type: string
responses:
FormDetails:
description: The form details.
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/RateLimitLimit'
X-RateLimit-Remaining:
$ref: '#/components/headers/RateLimitRemaining'
X-RateLimit-Reset:
$ref: '#/components/headers/RateLimitReset'
content:
application/json:
schema:
$ref: '#/components/schemas/FormDetails'
FormVariantList:
description: The list of form variants.
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/RateLimitLimit'
X-RateLimit-Remaining:
$ref: '#/components/headers/RateLimitRemaining'
X-RateLimit-Reset:
$ref: '#/components/headers/RateLimitReset'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/FormVariantDetails'
FormList:
description: The list of forms.
headers:
X-RateLimit-Limit:
$ref: '#/components/headers/RateLimitLimit'
X-RateLimit-Remaining:
$ref: '#/components/headers/RateLimitRemaining'
X-RateLimit-Reset:
$ref: '#/components/headers/RateLimitReset'
CurrentPage:
$ref: '#/components/headers/CurrentPage'
TotalPages:
$ref: '#/components/headers/TotalPages'
TotalCount:
$ref: '#/components/headers/TotalCount'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Form'
securitySchemes:
api-key:
type: apiKey
description: Header value must be prefixed with api-key
name: X-Auth-Token
in: header
oauth2:
type: oauth2
flows:
implicit:
authorizationUrl: https://app.getresponse.com/oauth2_authorize.html
scopes:
all: all data access
authorizationCode:
authorizationUrl: https://app.getresponse.com/oauth2_authorize.html
tokenUrl: https://api.getresponse.com/v3/token
scopes:
all: all data access
clientCredentials:
tokenUrl: https://api.getresponse.com/v3/token
scopes:
all: all data access