GetResponse APIv3

Release: 3, updated at: 2025-01-29T13:06:42+0000

Download OpenAPI specification:Download

Limits and throttling

GetResponse API calls are subject to throttling to ensure a high level of service for all users.

Time frame

Time frame is a period of time for which we calculate the API call limits. The limits reset in every time frame.

The time frame duration is 10 minutes.

Basic rate limits

Each user is allowed to make 30,000 API calls per time frame (10 minutes) and 80 API calls per second.

Parallel requests limit

It is possible to send up to 10 simultaneous requests.

Headers

Every API response includes a few additional headers:

  • X-RateLimit-Limit – the total number of requests available per time frame
  • X-RateLimit-Remaining – the number of requests left in the current time frame
  • X-RateLimit-Reset – seconds left in the current time frame

Errors

The 429 Too Many Requests HTTP response code indicates that the limit has been reached. The error response includes currentLimit and timeToReset fields in the context section, with the total number of requests available per time frame and seconds left in the current time frame respectively.

Reaching the limit

When you reach the limit, you need to wait for the time specified in timeToReset field or X-RateLimit-Reset header before making another request.

Authentication

API can be accessed by authenticated users only. This means that every request must be signed with your credentials. We offer two methods of authentication: API Key and OAuth 2.0. API key is our primary method and should be used in most cases. GetResponse MAX clients have to send an X-Domain header in addition to the API key. Supported OAuth 2.0 flows are: Authorization Code, Client Credentials, Implicit, and Refresh Token.

API key

Follow these steps to send an authentication request:

  • Find your unique and secret API key in the panel: https://app.getresponse.com/api
  • Add a custom X-Auth-Token header to all your requests. For example, if your API key is jfgs8jh4ksg93ban9Dfgh8, the header will look like this:
X-Auth-Token: api-key jfgs8jh4ksg93ban9Dfgh8

For security reasons, unused API keys expire after 90 days. When that happens, you’ll need to generate a new key to use our API.

Example authenticated request

$ curl -H "X-Auth-Token: api-key jfgs8jh4ksg93ban9Dfgh8" https://api.getresponse.com/v3/accounts

OAuth 2.0

To use OAuth 2.0 authentication, you need to get an "Access Token". For more information on how to obtain a token, head to our dedicated page: OAuth 2.0

To authenticate a request using an Access Token, set the value of Authorization header to "Bearer" followed by the Access Token.

Example

If the Access Token is jfg93baDfgh8n9Ds8jh4ksg93ban9Dfgh8

Authorization: Bearer jfg93baDfgh8n9Ds8jh4ksg93ban9Dfgh8

GetResponse MAX

GetResponse MAX customers need to take an extra step to authenticate the request. All requests have to be send with an X-Domain header that contains the client's domain. For example:

X-Domain: example.com

Please note that the header must contain only the domain name, without the protocol identifier (http:// or https://).

Using OAuth 2.0

Registering your own application

If you want to use an OAuth flow to authorize your application, first register your application

You need to provide a name, short description, and redirect URL.

Choosing grant flow

Once your application is registered, you can click on it to see your client_id and client_secret. They're basically a login and password for your application's access, so be sure not to share them with anyone.

Next, decide which authentication flow (grant type) you want to use. Here are your options:

  • choose the Authorization Code flow if your application is server-based (you have a server with its own domain and server-side code),
  • choose the Implicit flow if your application is based mostly on JavaScript or client-side code,
  • choose the Client Credential flow if you want to test your application or access your GetResponse account,
  • implement the Refresh Token flow to handle token expiration if you use the Authorization Code flow.

Authorization Code flow

First, your application must redirect a resource owner to the following URL:

https://app.getresponse.com/oauth2_authorize.html?response_type=code&client_id=_your_client_id_&state=xyz

The state parameter is there for security reasons and should be a random string. When the resource owner grants your application access to the resource, we will redirect the browser to the redirect URL you specified in the application settings and attach the same state as the parameter. Comparing the state parameter value ensures that the redirect was initiated by our system. The code parameter is an authorization code that you can exchange for an access token within 10 minutes, after which time it expires.

Example redirect with authorization code

https://myredirecturi.com/cb?code=ed17c498bfe343175cd7684c5b09979f2875b25c&state=xyz

Exchanging authorization code for the access token

Here's an example request to exchange authorization code for the access token:

$ curl -u client_id:client_secret https://api.getresponse.com/v3/token \
       -d 'grant_type=authorization_code&code=ed17c498bfe343175cd7684c5b09979f2875b25c'

Remember to replace client_id and client_secret with your OAuth application credentials.

Example response
{
    "access_token": "03807cb390319329bdf6c777d4dfae9c0d3b3c35",
    "expires_in": 3600,
    "token_type": "Bearer",
    "scope": null,
    "refresh_token": "170d9f64e781aaa6b3ba036083faba71b2fc4e6c"
}

Client Credentials flow

This flow is suitable for development, when you need to quickly access API to create some functionality. You can get the access token with a single request:

Request

$ curl -u client_id:client_secret https://api.getresponse.com/v3/token \
       -d 'grant_type=client_credentials'

Remember to replace client_id and client_secret with your OAuth application credentials.

Response

{
    "access_token": "e2222af2851a912470ec33c9b4de1ea3a304b7d7",
    "expires_in": 86400,
    "token_type": "Bearer",
    "scope": null
}

You can also go to https://app.getresponse.com/manage_api.html, click the action button for your application, and select "generate credentials". This will open a popup with a generated access token. You can then use the access token to authenticate your requests, for example:

$ curl -H "Authorization: Bearer e2222af2851a912470ec33c9b4de1ea3a304b7d7" https://api.getresponse.com/v3/from-fields

Implicit flow

First, your application must redirect a resource owner to the following URL:

https://app.getresponse.com/oauth2_authorize.html?response_type=token&client_id=_your_client_id_&redirect_uri=https://myredirecturi.com/cb&state=xyz

When the resource owner grants your application access to the resource, we will redirect the owner to the URL that was specified in the request.

There is no code exchange process because, unlike the Authorization Code flow, the redirect already has the access token in the parameters.

https://myredirecturi.com/cb#access_token=2YotnFZFEjr1zCsicMWpAA&state=xyz&token_type=bearer&expires_in=3600

Refresh Token flow

You need to refresh your access token if you receive this error message as a response to your request:

{
    "httpStatus": 401,
    "code": 1014,
    "codeDescription": "Problem during authentication process, check headers!",
    "message": "The access token provided is expired",
    "moreInfo": "https://apidocs.getresponse.com/v3/errors/1014",
    "context": {
        "sentToken": "b8b1e961a7f9fd4cc710d5d955e09c15a364ab71"
    }
}

If you are using the Authorization Code flow, you need to use the refresh token to issue a new access token/refresh token pair by making the following request:

$ curl -u client_id:client_secret https://api.getresponse.com/v3/token \
       -d 'grant_type=refresh_token&refresh_token=170d9f64e781aaa6b3ba036083faba71b2fc4e6c'

Remember to replace client_id and client_secret with your OAuth application credentials.

The response you'll get will look like this:

{
    "access_token": "890fdsa2f5d7b189fc4e6c4b1d170d9f591238ss",
    "expires_in": 86400,
    "token_type": "Bearer",
    "scope": null,
    "refresh_token": "170d9f64e781aaa6b3ba036083faba71b2fc4e6c"
}

GetResponse MAX

There are some differences when authenticating GetResponse MAX users:

  • the application must redirect to a page in the client's custom domain, for example: https://custom-domain.getresponse360.com/oauth2_authorize.html
  • token requests have to be send to one of the GetResponse MAX APIv3 endpoints (depending on the client's environment),
  • token requests have to include an X-Domain header,
  • the application has to be registered in a GetResponse MAX account within the same environment.

CORS (AJAX requests)

Cross-Origin Resource Sharing (CORS) mechanism is not supported by APIv3. It means that AJAX requests to the API will be blocked by the browser's same-origin policy. Please use a server-side application to access the API.

Timezone settings

The default timezone in response data is UTC.

To set a different timezone, add X-Time-Zone header with value of time zone name ("TZ database name" column).

Pagination

Most of the resource collections returned by API are paginated. It means that the response is divided into multiple pages.

Control the number of results on each page by using perPage query parameter and change pages by using page query parameter.

By default we return only the first 100 resources per page. You can change that by adding perPage parameter with a value of up to 1000.

Page numbers start with 1.

Paginated responses have 3 extra headers:

  • TotalCount – a total number of resources on all pages
  • TotalPages – a total number of pages
  • CurrentPage – current page number

Use the maximum perPage value (1000) if you plan to iterate over all the pages of the response.

When trying to get a page that exceeds the total number of pages, API will return an empty array ([]). Make sure to stop iterating when it happens.

CURLE_SSL_CACERT error

Solution to CURLE_SSL_CACERT error (code 60).

This error is related to expired CA (Certificate Authority) certificates installed on your server (the server that you send the requests from). You can read more about certificate verification on the cURL project website.

If you encounter this error while sending requests to the GetResponse APIv3, ask your server administrator to update the CA certificates using the latest bundle provided by the cURL project.

Please make sure that cURL is configured to use the updated bundle.

api-key

Header value must be prefixed with api-key

Security scheme type: API Key
header parameter name: X-Auth-Token

oauth2

Security scheme type: OAuth2
implicit OAuth Flow
Authorization URL: https://app.getresponse.com/oauth2_authorize.html
Scopes:
  • all -

    all data access

authorizationCode OAuth Flow
Authorization URL: https://app.getresponse.com/oauth2_authorize.html
Token URL: https://api.getresponse.com/v3/token
Scopes:
  • all -

    all data access

clientCredentials OAuth Flow
Token URL: https://api.getresponse.com/v3/token
Scopes:
  • all -

    all data access

Accounts

Returns account blocklist masks

Authorizations:
api-keyoauth2 (all)
query Parameters
query[mask]
string
Example: "@somedomain.com"

Blocklist mask to search for

Responses

200

Blocklist masks for the whole account.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/blocklists
GetResponse
/accounts/blocklists
GetResponse MAX US
/accounts/blocklists
GetResponse MAX PL
/accounts/blocklists

Response samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Update account blocklist

Authorizations:
api-keyoauth2 (all)
query Parameters
additionalFlags
string
Enum:"add" "delete" "noResponse"

The flag value add adds the masks provided in the request body to your blocklist. The flag value delete deletes the masks. The masks are replaced if there are no flag values in the request body.

For better performance, use the flag value noResponse. It removes the response body and can be used alone or combined with other flags. If multiple flags are used, separate them by a comma, like this: additionalFlags=noResponse or additionalFlags=add,noResponse.

Request Body schema: application/json
masks
required
Array of string

Responses

200

Blocklist masks for the whole account.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /accounts/blocklists
GetResponse
/accounts/blocklists
GetResponse MAX US
/accounts/blocklists
GetResponse MAX PL
/accounts/blocklists

Request samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Account information

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Your account information

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts
GetResponse
/accounts
GetResponse MAX US
/accounts
GetResponse MAX PL
/accounts

Response samples

application/json
Copy
Expand all Collapse all
{
  • "accountId": "VfEy1",
  • "email": "john.smith@test.com",
  • "countryCode":
    {
    },
  • "industryTag":
    {
    },
  • "timeZone":
    {
    },
  • "firstName": "John",
  • "lastName": "Smith",
  • "companyName": "MyBigCompany",
  • "phone": "+00155555555",
  • "state": "Oklahoma",
  • "city": "Alderson",
  • "street": "Sunset blv.",
  • "zipCode": "81-611",
  • "numberOfEmployees": "500",
  • "timeFormat": "24h"
}

Update account

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
firstName
string [ 2 .. 64 ] characters

First name

lastName
string [ 2 .. 64 ] characters

Last name

companyName
string [ 2 .. 64 ] characters

Company name

phone
string [ 2 .. 32 ] characters

Phone number

state
string [ 2 .. 40 ] characters

State

city
string

City

street
string [ 2 .. 64 ] characters

Street

zipCode
string [ 2 .. 9 ] characters

ZIP Code

numberOfEmployees
string
Enum:"50" "250" "500" "more"

Numbers of employees

timeFormat
string
Enum:"12h" "24h"

Account time notation

Responses

200

Your account information

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /accounts
GetResponse
/accounts
GetResponse MAX US
/accounts
GetResponse MAX PL
/accounts

Request samples

application/json
Copy
Expand all Collapse all
{
  • "firstName": "John",
  • "lastName": "Smith",
  • "companyName": "MyBigCompany",
  • "phone": "+00155555555",
  • "state": "Oklahoma",
  • "city": "Alderson",
  • "street": "Sunset blv.",
  • "zipCode": "81-611",
  • "numberOfEmployees": "500",
  • "timeFormat": "24h"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "accountId": "VfEy1",
  • "email": "john.smith@test.com",
  • "countryCode":
    {
    },
  • "industryTag":
    {
    },
  • "timeZone":
    {
    },
  • "firstName": "John",
  • "lastName": "Smith",
  • "companyName": "MyBigCompany",
  • "phone": "+00155555555",
  • "state": "Oklahoma",
  • "city": "Alderson",
  • "street": "Sunset blv.",
  • "zipCode": "81-611",
  • "numberOfEmployees": "500",
  • "timeFormat": "24h"
}

Billing information

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Billing information.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/billing
GetResponse
/accounts/billing
GetResponse MAX US
/accounts/billing
GetResponse MAX PL
/accounts/billing

Response samples

application/json
Copy
Expand all Collapse all
{
  • "listSize": "2500",
  • "paymentPlan": "Monthly",
  • "subscriptionPrice": 25,
  • "renewalDate": "2017-01-01",
  • "currencyCode": "USD",
  • "accountBalance": "-15.00",
  • "price": 25,
  • "paymentMethod": "credit_card",
  • "creditCard":
    {
    },
  • "addons":
    [
    ]
}

List of timezones

List of timezones in account's language context.

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

List of time zones

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/timezones
GetResponse
/accounts/timezones
GetResponse MAX US
/accounts/timezones
GetResponse MAX PL
/accounts/timezones

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get callbacks configuration

Authorizations:
api-keyoauth2 (all)

Responses

200

Callback configuration

400

Request validation error

401

Authentication error

404

Callbacks are disabled for the account

429

The throttling limit has been reached

get /accounts/callbacks
GetResponse
/accounts/callbacks
GetResponse MAX US
/accounts/callbacks
GetResponse MAX PL
/accounts/callbacks

Response samples

application/json
Copy
Expand all Collapse all
{
  • "url": null,
  • "actions":
    {
    }
}

Enable or update callbacks configuration

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
url
string <uri>

URL to use to post notifications, required if callbacks are not yet enabled

actions
object (CallbackActions)

Responses

200

Callback configuration

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /accounts/callbacks
GetResponse
/accounts/callbacks
GetResponse MAX US
/accounts/callbacks
GetResponse MAX PL
/accounts/callbacks

Request samples

application/json
Copy
Expand all Collapse all
{
  • "actions":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "url": null,
  • "actions":
    {
    }
}

Disable callbacks

Authorizations:
api-keyoauth2 (all)

Responses

204

Empty response

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

delete /accounts/callbacks
GetResponse
/accounts/callbacks
GetResponse MAX US
/accounts/callbacks
GetResponse MAX PL
/accounts/callbacks

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

List of Industry Tags

List of Industry Tags in account's language context.

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

Industry tags list

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/industries
GetResponse
/accounts/industries
GetResponse MAX US
/accounts/industries
GetResponse MAX PL
/accounts/industries

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

History of logins

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

Login history information

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/login-history
GetResponse
/accounts/login-history
GetResponse MAX US
/accounts/login-history
GetResponse MAX PL
/accounts/login-history

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Current status of your GetResponse badge

Authorizations:
api-keyoauth2 (all)

Responses

200

Account badge status

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/badge
GetResponse
/accounts/badge
GetResponse MAX US
/accounts/badge
GetResponse MAX PL
/accounts/badge

Response samples

application/json
Copy
Expand all Collapse all
{
  • "status": "enabled"
}

Turn on/off the GetResponse Badge

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
status
required
string (StatusEnum)
Enum:"enabled" "disabled"

Responses

200

Account badge status

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /accounts/badge
GetResponse
/accounts/badge
GetResponse MAX US
/accounts/badge
GetResponse MAX PL
/accounts/badge

Request samples

application/json
Copy
Expand all Collapse all
{
  • "status": "enabled"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "status": "enabled"
}

Send limits

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Send limits

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /accounts/sending-limits
GetResponse
/accounts/sending-limits
GetResponse MAX US
/accounts/sending-limits
GetResponse MAX PL
/accounts/sending-limits

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Multimedia

Get images list

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

Image list

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /multimedia
GetResponse
/multimedia
GetResponse MAX US
/multimedia
GetResponse MAX PL
/multimedia

Response samples

application/json
Copy
Expand all Collapse all

Upload image

Authorizations:
api-keyoauth2 (all)
Request Body schema: multipart/form-data
file
string <binary>

Responses

200

Image details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /multimedia
GetResponse
/multimedia
GetResponse MAX US
/multimedia
GetResponse MAX PL
/multimedia

Response samples

application/json
Copy
Expand all Collapse all

File Library

Get file by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
fileId
required
string
Example: "6Yh"

The file ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The file details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /file-library/files/{fileId}
GetResponse
/file-library/files/{fileId}
GetResponse MAX US
/file-library/files/{fileId}
GetResponse MAX PL
/file-library/files/{fileId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete file by file ID

Authorizations:
api-keyoauth2 (all)
path Parameters
fileId
required
string
Example: "6Yh"

The file ID

Responses

204

Delete file

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /file-library/files/{fileId}
GetResponse
/file-library/files/{fileId}
GetResponse MAX US
/file-library/files/{fileId}
GetResponse MAX PL
/file-library/files/{fileId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Delete folder by folder ID

Authorizations:
api-keyoauth2 (all)
path Parameters
folderId
required
string
Example: "Pa5"

The folder ID

Responses

204

Delete folder

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /file-library/folders/{folderId}
GetResponse
/file-library/folders/{folderId}
GetResponse MAX US
/file-library/folders/{folderId}
GetResponse MAX PL
/file-library/folders/{folderId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get storage space information

Authorizations:
api-keyoauth2 (all)

Responses

200

Storage space information

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /file-library/quota
GetResponse
/file-library/quota
GetResponse MAX US
/file-library/quota
GetResponse MAX PL
/file-library/quota

Response samples

application/json
Copy
Expand all Collapse all
{
  • "limit": 1048576,
  • "usage": 1024
}

Get the list of files

By default, you can only search files in the root directory. To search for files in all folders, use the parameter query[allFolders]=true. To search for files in a specified folder, use the parameter query[folderId]=<folderId>. Note: these two parameters can't be used together. 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[allFolders]
string (StringBooleanEnum)
Enum:"true" "false"

Return files from all folders, including the root folder. This parameter can't be used together with query[folderId]

query[folderId]
string

Search for files in a specific folder. This parameter can't be used together with query[allFolders]

query[name]
string

Search for files by name

query[group]
string (FileGroup)
Enum:"audio" "video" "photo" "document"
Example: "photo"

Search for files by group

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[group]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort files by group

sort[size]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort files by size

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of files

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /file-library/files
GetResponse
/file-library/files
GetResponse MAX US
/file-library/files
GetResponse MAX PL
/file-library/files

Response samples

application/json
Copy
Expand all Collapse all
[]

Create a file

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
content
required
string <byte>

The base64 encoded file content

name
required
string [ 1 .. 255 ] characters

The file name

extension
required
string

The file extension

folder
required
object (FolderShort) Nullable

The folder where the file is stored

Responses

201

The file details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /file-library/files
GetResponse
/file-library/files
GetResponse MAX US
/file-library/files
GetResponse MAX PL
/file-library/files

Request samples

application/json
Copy
Expand all Collapse all
{
  • "content": "dGVzdCBjb250ZW50",
  • "name": "image",
  • "extension": "jpg",
  • "folder":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get the list of folders

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search folders by name

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort folders by name

sort[size]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort folders by size

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort folders by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of folders

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /file-library/folders
GetResponse
/file-library/folders
GetResponse MAX US
/file-library/folders
GetResponse MAX PL
/file-library/folders

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create a folder

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 1 .. 128 ] characters

The folder name

Responses

201

The folder details

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /file-library/folders
GetResponse
/file-library/folders
GetResponse MAX US
/file-library/folders
GetResponse MAX PL
/file-library/folders

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "sample folder"
}

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Campaigns (Lists)

Our API v3 uses the terminology from the previous version of GetResponse.

Campaigns and lists are the same resource under a different name. For now, please refer to lists as campaigns.

Our API v4 will use the updated terminology.

Returns campaign blocklist masks

Authorizations:
api-keyoauth2 (all)
path Parameters
campaignId
required
string
Example: "3Va2e"

The campaign ID

query Parameters
query[mask]
string
Example: "@somedomain.com"

Blocklist mask to search for

Responses

200

Blocklist masks for the campaign.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /campaigns/{campaignId}/blocklists
GetResponse
/campaigns/{campaignId}/blocklists
GetResponse MAX US
/campaigns/{campaignId}/blocklists
GetResponse MAX PL
/campaigns/{campaignId}/blocklists

Response samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Updates campaign blocklist masks

Authorizations:
api-keyoauth2 (all)
path Parameters
campaignId
required
string
Example: "3Va2e"

The campaign ID

query Parameters
additionalFlags
string
Enum:"add" "delete" "noResponse"

The flag value add adds the masks provided in the request body to your blocklist. The flag value delete deletes the masks. The masks are replaced if there are no flag values in the request body.

For better performance, use the flag value noResponse. It removes the response body and can be used alone or combined with other flags. If multiple flags are used, separate them by a comma, like this: additionalFlags=noResponse or additionalFlags=add,noResponse.

Request Body schema: application/json
masks
required
Array of string

Responses

200

Blocklist masks for the campaign.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /campaigns/{campaignId}/blocklists
GetResponse
/campaigns/{campaignId}/blocklists
GetResponse MAX US
/campaigns/{campaignId}/blocklists
GetResponse MAX PL
/campaigns/{campaignId}/blocklists

Request samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "masks":
    [
    ]
}

Get a single campaign by the campaign ID

Authorizations:
api-keyoauth2 (all)
path Parameters
campaignId
required
string
Example: "3Va2e"

The campaign ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The campaign data.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /campaigns/{campaignId}
GetResponse
/campaigns/{campaignId}
GetResponse MAX US
/campaigns/{campaignId}
GetResponse MAX PL
/campaigns/{campaignId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update a campaign

Authorizations:
api-keyoauth2 (all)
path Parameters
campaignId
required
string
Example: "3Va2e"

The campaign ID

Request Body schema: application/json
name
required
string [ 3 .. 64 ] characters

The campaign (list) name.

  • You can use each list name just once in your account.

  • The name must be between 3-64 characters.

  • All alphabets supported by GetResponse, including right-to-left ones, are allowed.

  • You can use upper and lower case letters, numbers, spaces and special characters apart from the ones listed below.

  • You can’t use emojis and the following special characters: /, \, @, and [ or ].

languageCode
string

The campaign language code according to ISO 639-1, plus: zt - Chinese (Traditional), fs - Afghan Persian (Dari), md - Moldavian

isDefault
string (StringBooleanEnum)
Enum:"true" "false"

Is the campaign default

postal
object (CampaignPostal)
confirmation
object (CampaignConfirmation)
optinTypes
object (CampaignOptinTypes)
subscriptionNotifications
object (CampaignSubscriptionNotifications)
profile
object (CampaignProfile)

Responses

200

The campaign data.

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /campaigns/{campaignId}
GetResponse
/campaigns/{campaignId}
GetResponse MAX US
/campaigns/{campaignId}
GetResponse MAX PL
/campaigns/{campaignId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "my_campaign",
  • "languageCode": "EN",
  • "isDefault": "true",
  • "postal":
    {
    },
  • "confirmation":
    {
    },
  • "optinTypes":
    {
    },
  • "subscriptionNotifications":
    {
    },
  • "profile":
    {}
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a list of campaigns

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string
Example: "campaign_name"
query[isDefault]
boolean
Example: true
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of campaigns.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns
GetResponse
/campaigns
GetResponse MAX US
/campaigns
GetResponse MAX PL
/campaigns

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create a campaign

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 3 .. 64 ] characters

The campaign (list) name.

  • You can use each list name just once in your account.

  • The name must be between 3-64 characters.

  • All alphabets supported by GetResponse, including right-to-left ones, are allowed.

  • You can use upper and lower case letters, numbers, spaces and special characters apart from the ones listed below.

  • You can’t use emojis and the following special characters: /, \, @, and [ or ].

languageCode
string

The campaign language code according to ISO 639-1, plus: zt - Chinese (Traditional), fs - Afghan Persian (Dari), md - Moldavian

isDefault
string (StringBooleanEnum)
Enum:"true" "false"

Is the campaign default

postal
object (CampaignPostal)
confirmation
object (CampaignConfirmation)
optinTypes
object (CampaignOptinTypes)
subscriptionNotifications
object (CampaignSubscriptionNotifications)
profile
object (CampaignProfile)

Responses

201

The campaign data.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /campaigns
GetResponse
/campaigns
GetResponse MAX US
/campaigns
GetResponse MAX PL
/campaigns

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "my_campaign",
  • "languageCode": "EN",
  • "isDefault": "true",
  • "postal":
    {
    },
  • "confirmation":
    {
    },
  • "optinTypes":
    {
    },
  • "subscriptionNotifications":
    {
    },
  • "profile":
    {}
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get subscriber origin statistics

The results are indexed with the campaign ID.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

The list of origins.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/origins
GetResponse
/campaigns/statistics/origins
GetResponse MAX US
/campaigns/statistics/origins
GetResponse MAX PL
/campaigns/statistics/origins

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get subscriber location statistics

The results are indexed with the location name (PL, EN, etc.).

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

The list of locations.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/locations
GetResponse
/campaigns/statistics/locations
GetResponse MAX US
/campaigns/statistics/locations
GetResponse MAX PL
/campaigns/statistics/locations

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get campaign size statistics

Returns the number of the total added and removed subscribers, grouped by default or by time period.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

The campaign data.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/list-size
GetResponse
/campaigns/statistics/list-size
GetResponse MAX US
/campaigns/statistics/list-size
GetResponse MAX PL
/campaigns/statistics/list-size

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the number and origin of subscription statistics

Returns the number and origin of subscriptions, grouped by a specified campaigns for each day on which any changes were made. Dates in the YYYY-MM-DD format are used as keys in the response.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

Subscription statistics by date

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/subscriptions
GetResponse
/campaigns/statistics/subscriptions
GetResponse MAX US
/campaigns/statistics/subscriptions
GetResponse MAX PL
/campaigns/statistics/subscriptions

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get removal statistics

Returns the number and reason for removed contacts. Dates in the YYYY-MM-DD format are used as keys in the response.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

Subscription statistics by date

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/removals
GetResponse
/campaigns/statistics/removals
GetResponse MAX US
/campaigns/statistics/removals
GetResponse MAX PL
/campaigns/statistics/removals

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get balance statistics

Returns the balance of subscriptions. Dates in the YYYY-MM-DD format are used as keys in the response.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
required
string (CampaignStatisticsIdQuery)
Example: "3Va2e"
query[groupBy]
string
Enum:"hour" "day" "month" "total"
Example: "month"
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Responses

200

The subscription statistics, shown by date.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/balance
GetResponse
/campaigns/statistics/balance
GetResponse MAX US
/campaigns/statistics/balance
GetResponse MAX PL
/campaigns/statistics/balance

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the statistics summary for selected campaigns

The results are indexed with the campaign ID.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
string (CampaignStatisticsIdQuery)
Example: "3Va2e"

Responses

200

The summary list.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/statistics/summary
GetResponse
/campaigns/statistics/summary
GetResponse MAX US
/campaigns/statistics/summary
GetResponse MAX PL
/campaigns/statistics/summary

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Contacts

Get contact details by contact ID

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The contact details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /contacts/{contactId}
GetResponse
/contacts/{contactId}
GetResponse MAX US
/contacts/{contactId}
GetResponse MAX PL
/contacts/{contactId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "contactId": "pV3r",
  • "name": "John Doe",
  • "origin": "import",
  • "timeZone": "Europe/Warsaw",
  • "changedOn": "2017-12-19T13:11:48+0000",
  • "createdOn": "2017-03-02T07:30:49+0000",
  • "campaign":
    {},
  • "email": "john.doe@example.com",
  • "dayOfCycle": "42",
  • "scoring": 8,
  • "engagementScore": 3,
  • "note": "string",
  • "ipAddress": "1.2.3.4",
  • "geolocation":
    {
    },
  • "tags":
    [],
  • "customFieldValues":
    [
    ]
}

Update contact details

Skip the fields you don't want to update. If tags and custom fields are provided, they'll be replaced with the values sent in this request. If the campaignId changes, the contact will be moved from the original campaign (list) to the new campaign (list). Their activity history and statistics will also be moved.

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

Request Body schema: application/json
name
string [ 1 .. 128 ] characters
campaign
object (CampaignReference)
email
required
string <email>
dayOfCycle
string Nullable

The day on which the contact is in the Autoresponder cycle. null indicates the contacts is not in the cycle.

scoring
number Nullable

Contact scoring, pass null to remove the score from a contact

note
string [ 0 .. 255 ] characters Nullable
tags
Array of object (NewContactTag)
customFieldValues
Array of object (NewContactCustomFieldValue)

Responses

200

The contact details.

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /contacts/{contactId}
GetResponse
/contacts/{contactId}
GetResponse MAX US
/contacts/{contactId}
GetResponse MAX PL
/contacts/{contactId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "John Doe",
  • "campaign":
    {
    },
  • "email": "john.doe@example.com",
  • "dayOfCycle": "42",
  • "scoring": 8,
  • "note": "string",
  • "tags":
    [
    ],
  • "customFieldValues":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "contactId": "pV3r",
  • "name": "John Doe",
  • "origin": "import",
  • "timeZone": "Europe/Warsaw",
  • "changedOn": "2017-12-19T13:11:48+0000",
  • "createdOn": "2017-03-02T07:30:49+0000",
  • "campaign":
    {},
  • "email": "john.doe@example.com",
  • "dayOfCycle": "42",
  • "scoring": 8,
  • "engagementScore": 3,
  • "note": "string",
  • "ipAddress": "1.2.3.4",
  • "geolocation":
    {
    },
  • "tags":
    [],
  • "customFieldValues":
    [
    ]
}

Delete a contact by contact ID

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

query Parameters
messageId
string

The ID of a message (such as a newsletter, an autoresponder, or an RSS-newsletter). When passed, this method will simulate the unsubscribe process, as if the contact clicked the unsubscribe link in a given message.

ipAddress
string <ipv4>

This makes it possible to pass the IP from which the contact unsubscribed. Used only if the messageId was send.

Responses

204

Empty response.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /contacts/{contactId}
GetResponse
/contacts/{contactId}
GetResponse MAX US
/contacts/{contactId}
GetResponse MAX PL
/contacts/{contactId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a list of contact activities

By default, only activities from the last 14 days are returned. To get earlier data, use query[createdOn] parameter. 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.

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

query Parameters
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of contact activities.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /contacts/{contactId}/activities
GetResponse
/contacts/{contactId}/activities
GetResponse MAX US
/contacts/{contactId}/activities
GetResponse MAX PL
/contacts/{contactId}/activities

Response samples

application/json
Copy
Expand all Collapse all
[]

Get contacts from a single campaign

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
campaignId
required
string
Example: "3Va2e"

The campaign ID

query Parameters
query[email]
string

Search contacts by email

query[name]
string

Search contacts by name

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

sort[email]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort contacts by email

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort contacts by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort contacts by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of contacts.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /campaigns/{campaignId}/contacts
GetResponse
/campaigns/{campaignId}/contacts
GetResponse MAX US
/campaigns/{campaignId}/contacts
GetResponse MAX PL
/campaigns/{campaignId}/contacts

Response samples

application/json
Copy
Expand all Collapse all
[]

Upsert the custom fields of a contact

Upsert (add or update) the custom fields of a contact. This method doesn't remove (unassign) custom fields.

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

Request Body schema: application/json
customFieldValues
required
Array of object (NewContactCustomFieldValue)

Responses

200

The list of custom fields

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /contacts/{contactId}/custom-fields
GetResponse
/contacts/{contactId}/custom-fields
GetResponse MAX US
/contacts/{contactId}/custom-fields
GetResponse MAX PL
/contacts/{contactId}/custom-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "customFieldValues":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Upsert the tags of a contact

Upsert (add or update) the tags of a contact. This method doesn't remove (unassign) tags.

Authorizations:
api-keyoauth2 (all)
path Parameters
contactId
required
string
Example: "pV3r"

The contact ID

Request Body schema: application/json
tags
required
Array of object (NewContactTag)

Responses

200

The list of contact tags.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /contacts/{contactId}/tags
GetResponse
/contacts/{contactId}/tags
GetResponse MAX US
/contacts/{contactId}/tags
GetResponse MAX PL
/contacts/{contactId}/tags

Request samples

application/json
Copy
Expand all Collapse all
{
  • "tags":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
[]

Get contact list

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[email]
string

Search contacts by email

query[name]
string

Search contacts by name

query[campaignId]
string

Search contacts by campaign ID

query[origin]
string
Enum:"import" "email" "www" "panel" "leads" "sale" "api" "survey" "iphone" "copy" "landing_page" "webinar" "website_builder_elegant" "chat" "course" "premium_newsletter"

Search contacts by origin

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

query[changedOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search contacts edited from this date

query[changedOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search contacts edited to this date

sort[email]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by email

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

sort[changedOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by change date

sort[campaignId]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by campaign ID

additionalFlags
string

The additional flags parameter with the value 'exactMatch' will search for contacts with the exact value of the email and name provided in the query string. Without this flag, matching is done via a standard 'like' comparison, which may sometimes be slow.

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of contacts.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /contacts
GetResponse
/contacts
GetResponse MAX US
/contacts
GetResponse MAX PL
/contacts

Response samples

application/json
Copy
Expand all Collapse all
[]

Create a new contact

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
string [ 1 .. 128 ] characters
campaign
required
object (CampaignReference)
email
required
string <email>
dayOfCycle
string Nullable

The day on which the contact is in the Autoresponder cycle. null indicates the contacts is not in the cycle.

scoring
number Nullable

Contact scoring, pass null to remove the score from a contact

ipAddress
string <ipv4> or string <ipv6>

The contact's IP address. IPv4 and IPv6 formats are accepted.

tags
Array of object (NewContactTag)
customFieldValues
Array of object (NewContactCustomFieldValue)

Responses

202

If the request is successful, the API returns the HTTP code 202 Accepted. This means that the contact has been preliminarily validated and added to the queue. It may take a few minutes to process the queue and add the contact to the list. If your contact didn't appear on the list, there's a possibility that it was rejected at a later stage of processing.

Double opt-in

Campaigns can be set to double opt-in. This means that the contact has to click a link in a confirmation message before they can be added to your list. Unconfirmed contacts are not returned by the API and can only be found using Search Contacts.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /contacts
GetResponse
/contacts
GetResponse MAX US
/contacts
GetResponse MAX PL
/contacts

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "John Doe",
  • "campaign":
    {
    },
  • "email": "john.doe@example.com",
  • "dayOfCycle": "42",
  • "scoring": 8,
  • "ipAddress": "1.2.3.4",
  • "tags":
    [
    ],
  • "customFieldValues":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Create multiple contacts at once

This endpoint lets you create multiple contacts in one request.

Note

This endpoint is subject to special limits and throttling. You can make 80 calls per time frame (10 minutes) and only 1 call per second. The allowed batch size is 1000 contacts. For more information, check our API Docs.

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
campaignId
required
string

ID of the destination campaign (list).

contacts
required
Array of object

Contacts that will be created.

Responses

202

If the request is successful, the API returns the HTTP code 202 Accepted. This means that the contacts has been preliminarily validated and added to the queue. It may take a few minutes to process the queue and add the contacts to the list. If your contact doesn't appear on the list, they were likely rejected during the late processing stages.

Double opt-in

Campaigns (lists) can be set to use double opt-in. This means that a contact has to click a link in a confirmation message before they can be added to your list. Unconfirmed contacts are not returned by API and can only be found using Search Contacts.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /contacts/batch
GetResponse
/contacts/batch
GetResponse MAX US
/contacts/batch
GetResponse MAX PL
/contacts/batch

Request samples

application/json
Copy
Expand all Collapse all
{
  • "campaignId": "C",
  • "contacts":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Custom Fields

Get a single custom field definition by the custom field ID

Authorizations:
api-keyoauth2 (all)
path Parameters
customFieldId
required
string
Example: "pas"

The custom field ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The custom field details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /custom-fields/{customFieldId}
GetResponse
/custom-fields/{customFieldId}
GetResponse MAX US
/custom-fields/{customFieldId}
GetResponse MAX PL
/custom-fields/{customFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update the custom field definition

Authorizations:
api-keyoauth2 (all)
path Parameters
customFieldId
required
string
Example: "pas"

The custom field ID

Request Body schema: application/json
hidden
required
string (StringBooleanEnum)
Enum:"true" "false"

Whether the custom field is visible to contacts

values
required
Array of string

The list of assigned values (zero or more - depending on the custom field type. Please see description)

Responses

200

The custom field details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /custom-fields/{customFieldId}
GetResponse
/custom-fields/{customFieldId}
GetResponse MAX US
/custom-fields/{customFieldId}
GetResponse MAX PL
/custom-fields/{customFieldId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "hidden": "false",
  • "values":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete a single custom field definition

Authorizations:
api-keyoauth2 (all)
path Parameters
customFieldId
required
string
Example: "pas"

The custom field ID

Responses

204

Delete a custom field.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /custom-fields/{customFieldId}
GetResponse
/custom-fields/{customFieldId}
GetResponse MAX US
/custom-fields/{customFieldId}
GetResponse MAX PL
/custom-fields/{customFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a list of custom fields

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search custom fields by name

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of custom fields

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /custom-fields
GetResponse
/custom-fields
GetResponse MAX US
/custom-fields
GetResponse MAX PL
/custom-fields

Response samples

application/json
Copy
Expand all Collapse all
[]

Create a custom field

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 1 .. 128 ] characters

The name of the custom field. It must meet the following requirements:

  • be unique
  • use only lowercase letters, underscores and digits
  • 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
required
string (CustomFieldTypeEnum)
Enum:"string" "number" "date" "datetime" "country" "currency" "phone" "gender" "ip" "url"

The custom field type accepts the following values:

  • string - input for a string value
  • number - input for a numeric value
  • date - input for a date
  • datetime - input for date and time
  • country - input for a country
  • currency - input for a currency, allows all ISO 4217 currency codes
  • phone - input for a phone number
  • gender - input for gender, allows Male, Female or Prefer not to say
  • ip - input for an IP address
  • url - input for a URL.
format
required
string (CustomFieldFormatEnum)
Enum:"text" "textarea" "radio" "checkbox" "single_select" "multi_select"

The custom field format accepts following values:

  • text - text input (doesn't require values in the values field, you can pass empty array)
  • textarea - textarea input (doesn't require values in the values field, you can pass empty array)
  • radio - radio input (requires at least 2 values in the values field)
  • checkbox - checkbox input (doesn't require values in the values field, you can pass empty array)
  • single_select - single select input (requires at least 2 values in the values field)
  • multi_select - multi select input (requires at least 2 values in the values field).
hidden
required
string (StringBooleanEnum)
Enum:"true" "false"

Whether the custom field is visible to contacts

values
required
Array of string

The list of assigned default values, starting from zero depending on the custom field format. (Please see description).

Responses

201

The custom field details.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /custom-fields
GetResponse
/custom-fields
GetResponse MAX US
/custom-fields
GetResponse MAX PL
/custom-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "office_phone_number",
  • "type": "phone",
  • "format": "text",
  • "hidden": "false",
  • "values":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Search Contacts

Get search contacts by contact ID.

Get the definition of a specific contact-search filter.

Authorizations:
api-keyoauth2 (all)
path Parameters
searchContactId
required
string
Example: "pV3r"

The saved search contact identifier

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Search contact details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /search-contacts/{searchContactId}
GetResponse
/search-contacts/{searchContactId}
GetResponse MAX US
/search-contacts/{searchContactId}
GetResponse MAX PL
/search-contacts/{searchContactId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ],
  • "searchContactId": "pV3r",
  • "name": "custom test filter",
  • "createdOn": "2018-04-10T10:02:57+0000",
}

Update search contacts

Update specified search contacts.

Authorizations:
api-keyoauth2 (all)
path Parameters
searchContactId
required
string
Example: "pV3r"

The saved search contact identifier

Request Body schema: application/json
subscribersType
Array of string
Default: "subscribed"
Items Value:"subscribed"

Only one subscription status

sectionLogicOperator
required
string
Enum:"or" "and"

Match 'any' (or value) or 'all' (and value) of the following conditions

section
required
Array of object (SearchContactSection)
name
required
string

The unique name of search-contact

Responses

200

Search contact details.

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /search-contacts/{searchContactId}
GetResponse
/search-contacts/{searchContactId}
GetResponse MAX US
/search-contacts/{searchContactId}
GetResponse MAX PL
/search-contacts/{searchContactId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ],
  • "name": "custom test filter"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ],
  • "searchContactId": "pV3r",
  • "name": "custom test filter",
  • "createdOn": "2018-04-10T10:02:57+0000",
}

Delete search contacts

Authorizations:
api-keyoauth2 (all)
path Parameters
searchContactId
required
string
Example: "pV3r"

The saved search contact identifier

Responses

204

Delete search contacts.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /search-contacts/{searchContactId}
GetResponse
/search-contacts/{searchContactId}
GetResponse MAX US
/search-contacts/{searchContactId}
GetResponse MAX PL
/search-contacts/{searchContactId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get contacts by search contacts ID

Get contacts from saved search contacts by ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
searchContactId
required
string
Example: "pV3r"

The saved search contact identifier

query Parameters
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "desc"

Sort by name

sort[email]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "desc"

Sort by email

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "asc"

Sort by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The contact list.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /search-contacts/{searchContactId}/contacts
GetResponse
/search-contacts/{searchContactId}/contacts
GetResponse MAX US
/search-contacts/{searchContactId}/contacts
GetResponse MAX PL
/search-contacts/{searchContactId}/contacts

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Upsert custom fields by search contacts

Makes it possible to add and update custom field values for all contacts that meet the search criteria. This method doesn't remove or overwrite custom fields with the values from the request.

Authorizations:
api-keyoauth2 (all)
path Parameters
searchContactId
required
string
Example: "pV3r"

The saved search contact identifier

Request Body schema: application/json
customFieldValues
required
Array of object (NewContactCustomFieldValue)

Responses

202

Upsert custom fields by searchContactId.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /search-contacts/{searchContactId}/custom-fields
GetResponse
/search-contacts/{searchContactId}/custom-fields
GetResponse MAX US
/search-contacts/{searchContactId}/custom-fields
GetResponse MAX PL
/search-contacts/{searchContactId}/custom-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "customFieldValues":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a saved search contact list

Makes it possible to retrieve a collection of short representations of search-contact (known as custom filters in the panel). Every item represents a basic filter object. 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "desc"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "asc"

Sort by creation date

query[name]
string

Search by name

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The saved search contact.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /search-contacts
GetResponse
/search-contacts
GetResponse MAX US
/search-contacts
GetResponse MAX PL
/search-contacts

Response samples

application/json
Copy
Expand all Collapse all
[]

Create search contacts

Makes it possible to create a new search-contact. Please refer to Segments (search contacts) reference manual

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
subscribersType
Array of string
Default: "subscribed"
Items Value:"subscribed"

Only one subscription status

sectionLogicOperator
required
string
Enum:"or" "and"

Match 'any' (or value) or 'all' (and value) of the following conditions

section
required
Array of object (SearchContactSection)
name
required
string

The unique name of search-contact

Responses

201

Search contact details.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /search-contacts
GetResponse
/search-contacts
GetResponse MAX US
/search-contacts
GetResponse MAX PL
/search-contacts

Request samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ],
  • "name": "custom test filter"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ],
  • "searchContactId": "pV3r",
  • "name": "custom test filter",
  • "createdOn": "2018-04-10T10:02:57+0000",
}

Search contacts using conditions

Makes it possible to get a collection of contacts according to a given condition. Please refer to Segments (search contacts) reference manual

Authorizations:
api-keyoauth2 (all)
query Parameters
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "desc"

Sort by name

sort[email]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "desc"

Sort by email

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "asc"

Sort by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Request Body schema: application/json
subscribersType
required
Array of string
Items Enum:"subscribed" "undelivered" "removed" "unconfirmed"

Only one subscription status

sectionLogicOperator
required
string
Enum:"or" "and"

Match 'any' (or value) or 'all' (and value) of the following conditions

section
required
Array of object (SearchContactSection)

Responses

200

The contact list.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /search-contacts/contacts
GetResponse
/search-contacts/contacts
GetResponse MAX US
/search-contacts/contacts
GetResponse MAX PL
/search-contacts/contacts

Request samples

application/json
Copy
Expand all Collapse all
{
  • "subscribersType":
    [
    ],
  • "sectionLogicOperator": "or",
  • "section":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Subscription Confirmations

Get collection of SUBSCRIPTION CONFIRMATIONS bodies

Sending GET request to this url, returns collection of SUBSCRIPTION CONFIRMATIONS bodies.

Language code used in url must be in ISO 639-1 Language Code Standard.

Authorizations:
api-keyoauth2 (all)
path Parameters
languageCode
required
string
Example: "en"

ISO 639-1 Language Code Standard

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

List of subscription confirmation bodies

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /subscription-confirmations/body/{languageCode}
GetResponse
/subscription-confirmations/body/{languageCode}
GetResponse MAX US
/subscription-confirmations/body/{languageCode}
GetResponse MAX PL
/subscription-confirmations/body/{languageCode}

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get collection of SUBSCRIPTION CONFIRMATIONS subjects

Sending GET request to this url, returns collection of SUBSCRIPTION CONFIRMATIONS subjects.

Language code used in url must be in ISO 639-1 Language Code Standard.

Authorizations:
api-keyoauth2 (all)
path Parameters
languageCode
required
string
Example: "en"

ISO 639-1 Language Code Standard

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

List of subscription confirmation subjects

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /subscription-confirmations/subject/{languageCode}
GetResponse
/subscription-confirmations/subject/{languageCode}
GetResponse MAX US
/subscription-confirmations/subject/{languageCode}
GetResponse MAX PL
/subscription-confirmations/subject/{languageCode}

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Predefined Fields

Get a predefined field by ID

Get detailed information about a specified predefined field.

Authorizations:
api-keyoauth2 (all)
path Parameters
predefinedFieldId
required
string
Example: "6neM"

The predefined field identifier

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The predefined field details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /predefined-fields/{predefinedFieldId}
GetResponse
/predefined-fields/{predefinedFieldId}
GetResponse MAX US
/predefined-fields/{predefinedFieldId}
GetResponse MAX PL
/predefined-fields/{predefinedFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update a predefined field

Authorizations:
api-keyoauth2 (all)
path Parameters
predefinedFieldId
required
string
Example: "6neM"

The predefined field identifier

Request Body schema: application/json
value
required
string [ 1 .. 350 ] characters ^[A-Za-z_]{1,350}$

Responses

200

The predefined field details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /predefined-fields/{predefinedFieldId}
GetResponse
/predefined-fields/{predefinedFieldId}
GetResponse MAX US
/predefined-fields/{predefinedFieldId}
GetResponse MAX PL
/predefined-fields/{predefinedFieldId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "value": "my_new_value"
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete a predefined field

Authorizations:
api-keyoauth2 (all)
path Parameters
predefinedFieldId
required
string
Example: "6neM"

The predefined field identifier

Responses

204

Delete a predefined field.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /predefined-fields/{predefinedFieldId}
GetResponse
/predefined-fields/{predefinedFieldId}
GetResponse MAX US
/predefined-fields/{predefinedFieldId}
GetResponse MAX PL
/predefined-fields/{predefinedFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the predefined fields list

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"
Example: "DESC"

Sort by name

query[name]
string

Search by name

query[campaignId]
string

Search by campaign ID

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of predefined fields.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /predefined-fields
GetResponse
/predefined-fields
GetResponse MAX US
/predefined-fields
GetResponse MAX PL
/predefined-fields

Response samples

application/json
Copy
Expand all Collapse all
[]

Create a predefined field

Makes it possible to create a new predefined field.

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 1 .. 32 ] characters ^[A-Za-z0-9_]{1,32}$
value
required
string [ 1 .. 350 ] characters
campaign
required
object (CampaignReference)

Responses

201

The predefined field details.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /predefined-fields
GetResponse
/predefined-fields
GetResponse MAX US
/predefined-fields
GetResponse MAX PL
/predefined-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "my_predefined_field_123",
  • "value": "my value",
  • "campaign":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Suppressions

Get a suppression list by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
suppressionId
required
string
Example: "pypF"

The suppression ID

Responses

200

The suppression details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /suppressions/{suppressionId}
GetResponse
/suppressions/{suppressionId}
GetResponse MAX US
/suppressions/{suppressionId}
GetResponse MAX PL
/suppressions/{suppressionId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update a suppression list by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
suppressionId
required
string
Example: "pypF"

The suppression ID

Request Body schema: application/json
name
required
string

The name of the suppression list

masks
required
Array of string

Responses

200

The suppression details.

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /suppressions/{suppressionId}
GetResponse
/suppressions/{suppressionId}
GetResponse MAX US
/suppressions/{suppressionId}
GetResponse MAX PL
/suppressions/{suppressionId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "suppression-name",
  • "masks":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Deletes a given suppression list by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
suppressionId
required
string
Example: "pypF"

The suppression ID

Responses

204

Suppression list deleted successfully.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /suppressions/{suppressionId}
GetResponse
/suppressions/{suppressionId}
GetResponse MAX US
/suppressions/{suppressionId}
GetResponse MAX PL
/suppressions/{suppressionId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get suppression lists

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search suppressions by name

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search suppressions created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search suppressions created to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the createdOn date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The suppressions list.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /suppressions
GetResponse
/suppressions
GetResponse MAX US
/suppressions
GetResponse MAX PL
/suppressions

Response samples

application/json
Copy
Expand all Collapse all
[]

Creates a new suppression list

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string

The name of the suppression list

masks
Array of string

Responses

201

The suppression details.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /suppressions
GetResponse
/suppressions
GetResponse MAX US
/suppressions
GetResponse MAX PL
/suppressions

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "suppression-name",
  • "masks":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Imports

Get import details by ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
importId
required
string
Example: "o6gE"

The import ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The import details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /imports/{importId}
GetResponse
/imports/{importId}
GetResponse MAX US
/imports/{importId}
GetResponse MAX PL
/imports/{importId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "importId": "o6gE",
  • "campaign":
    {},
  • "status": "uploaded",
  • "statistics":
    {
    },
  • "errorStatistics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "finishedOn": "2025-02-04T14:41:25+00:00",
}

Get a list of imports.

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[campaignId]
string

Search imports by campaignId

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search imports created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search imports created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by creation date

sort[finishedOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by finish date

sort[campaignName]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by campaign name

sort[uploadedContacts]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by uploaded contact count

sort[updatedContacts]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by updated contact count

sort[addedContacts]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by inserted contact count

sort[invalidContacts]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by invalid contact count

sort[status]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort imports by status (uploaded, to_review, approved, finished, rejected, canceled)

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of imports.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /imports
GetResponse
/imports
GetResponse MAX US
/imports
GetResponse MAX PL
/imports

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Schedule a new contact import

This endpoint lets you schedule a contact import. That way, you can add and update your contacts using a single API call. Since API imports are asynchronous, you should check periodically for updates while your original API request is being processed. To keep track of your import status, use GET import (provide the importId from the response), or subscribe to an import finished webhook. Please note, that this endpoint has specific rate limits - for details please refer to Create Import Limits. For more information on imports, check our API Docs or Help Center

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
campaignId
required
string

The ID of the destination campaign (list)

fieldMapping
required
Array of string

Mapping definition for such contact properties as email address, name, or custom fields. It's the equivalent of column headers in a CSV file used to import contacts in a GetResponse account. The email value is required. For custom fields, provide only custom fields name in the mapping. Include their values in the corresponding field in the contact array

contacts
required
Array of Array of string (NewImportContact)

Container for a contact definition. Include the values defined in the fieldMapping array

Responses

201

The import details.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /imports
GetResponse
/imports
GetResponse MAX US
/imports
GetResponse MAX PL
/imports

Request samples

application/json
Copy
Expand all Collapse all
{
  • "campaignId": "z5c",
  • "fieldMapping":
    [
    ],
  • "contacts":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "importId": "o6gE",
  • "campaign":
    {},
  • "status": "uploaded",
  • "statistics":
    {
    },
  • "errorStatistics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "finishedOn": "2025-02-04T14:41:25+00:00",
}

Newsletters

Get a single newsletter by its ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /newsletters/{newsletterId}
GetResponse
/newsletters/{newsletterId}
GetResponse MAX US
/newsletters/{newsletterId}
GetResponse MAX PL
/newsletters/{newsletterId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "content":
    {
    },
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "newsletterId": "N",
  • "name": "New message",
  • "type": "broadcast",
  • "status": "enabled",
  • "editor": "custom",
  • "subject": "Annual report",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "campaign":
    {},
  • "sendOn": "2025-02-04T14:41:25+00:00",
  • "attachments":
    [
    ],
  • "sendSettings":
    {
    },
  • "sendMetrics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Delete newsletter

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

Responses

204

Delete newsletter.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /newsletters/{newsletterId}
GetResponse
/newsletters/{newsletterId}
GetResponse MAX US
/newsletters/{newsletterId}
GetResponse MAX PL
/newsletters/{newsletterId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get newsletter activities

By default, activities from the last 14 days are listed only. You can get activities for last 30 days only. 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.

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

query Parameters
query[activity]
string
Enum:"send" "open" "click"

Search newsletter activities by activity type

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search newsletter activities from this date. Default value is 14 days earlier. You can get activities for last 30 days only.

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search newsletter activities to this date. Default value is now

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of newsletters activities

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /newsletters/{newsletterId}/activities
GetResponse
/newsletters/{newsletterId}/activities
GetResponse MAX US
/newsletters/{newsletterId}/activities
GetResponse MAX PL
/newsletters/{newsletterId}/activities

Response samples

application/json
Copy
Expand all Collapse all
[]

Cancel sending the newsletter

Using this method, you can cancel the sending of the newsletter. It will also turn the newsletter into a draft.

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

Responses

200

The newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /newsletters/{newsletterId}/cancel
GetResponse
/newsletters/{newsletterId}/cancel
GetResponse MAX US
/newsletters/{newsletterId}/cancel
GetResponse MAX PL
/newsletters/{newsletterId}/cancel

Response samples

application/json
Copy
Expand all Collapse all
{
  • "content":
    {
    },
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "newsletterId": "N",
  • "name": "New message",
  • "type": "broadcast",
  • "status": "enabled",
  • "editor": "custom",
  • "subject": "Annual report",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "campaign":
    {},
  • "sendOn": "2025-02-04T14:41:25+00:00",
  • "attachments":
    [
    ],
  • "sendSettings":
    {
    },
  • "sendMetrics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

The statistics of single newsletter

This makes it possible to easily fetch statistics for a single newsletter. You can group the data hourly, daily, monthly and as a total sum. Remember that all statistics date ranges are given in standard UTC period type objects. (See ISO 8601 standard). 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.

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponder statistics split by time interval.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /newsletters/{newsletterId}/statistics
GetResponse
/newsletters/{newsletterId}/statistics
GetResponse MAX US
/newsletters/{newsletterId}/statistics
GetResponse MAX PL
/newsletters/{newsletterId}/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get newsletter thumbnail

Authorizations:
api-keyoauth2 (all)
path Parameters
newsletterId
required
string
Example: "N"

The newsletter ID

query Parameters
size
string
Default: "default"
Enum:"default" "small"

The size of the thumbnail

Responses

200

The newsletter thumbnail.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /newsletters/{newsletterId}/thumbnail
GetResponse
/newsletters/{newsletterId}/thumbnail
GetResponse MAX US
/newsletters/{newsletterId}/thumbnail
GetResponse MAX PL
/newsletters/{newsletterId}/thumbnail

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the newsletter list

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[subject]
string

Search newsletters by subject

query[name]
string

Search newsletters by name

query[status]
string
Enum:"enabled" "disabled"

Search newsletters by status

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search newsletters created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search newsletters created to this date

query[sendOn][from]
string <date>
Example: "2023-01-20"

Search for newsletters sent from this date

query[sendOn][to]
string <date>
Example: "2023-01-20"

Search for newsletters sent to this date

query[type]
string
Enum:"draft" "broadcast" "splittest" "automation"

Search newsletters by type

query[campaignId]
string

Search newsletters by campaign ID

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

sort[sendOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by send on date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of newsletters.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /newsletters
GetResponse
/newsletters
GetResponse MAX US
/newsletters
GetResponse MAX PL
/newsletters

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create newsletter

This method creates a new newsletter and puts it in a queue to send.

NOTE: This method has a limit of 256 calls per day.

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
content
required
object (MessageContent)

The message content.

flags
Array of string (MessageFlagsArray)
Items Enum:"openrate" "clicktrack" "google_analytics"

The message flags.

name
string [ 2 .. 128 ] characters

The newsletter name

type
string
Default: "broadcast"
Enum:"broadcast" "draft"

The newsletter type

editor
string (MessageEditorEnum)
Enum:"custom" "text" "getresponse" "legacy" "html2"

This describes how the content of the message was created

subject
required
string [ 2 .. 128 ] characters

The message subject

fromField
required
object (FromFieldReference)

The 'From' email address used for the message

replyTo
object (FromFieldReference)

The email that will be used as the reply-to address

campaign
required
object (CampaignReference)

The newsletter must be assigned to a campaign

attachments
Array of object (NewsletterAttachment)

The newsletter attachments. The size of all attachments combined can't exceed 400KB

sendSettings
required
object (NewsletterSendSettingsDetails)

How the message will be delivered to the subscriber. You can specify multiple parameters. Then the system uses AND logic.

Responses

201

The newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /newsletters
GetResponse
/newsletters
GetResponse MAX US
/newsletters
GetResponse MAX PL
/newsletters

Request samples

application/json
Copy
Expand all Collapse all
{
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "name": "New message",
  • "type": "broadcast",
  • "editor": "custom",
  • "subject": "Annual report",
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "campaign":
    {
    },
  • "attachments":
    [
    ],
  • "sendSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "content":
    {
    },
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "newsletterId": "N",
  • "name": "New message",
  • "type": "broadcast",
  • "status": "enabled",
  • "editor": "custom",
  • "subject": "Annual report",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "campaign":
    {},
  • "sendOn": "2025-02-04T14:41:25+00:00",
  • "attachments":
    [
    ],
  • "sendSettings":
    {
    },
  • "sendMetrics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Send the newsletter draft

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
messageId
required
string

The message identifier (equals to newsletterId)

sendSettings
required
object (NewsletterSendSettingsDetails)

How the message will be delivered to the subscriber

Responses

201

The newsletter details.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /newsletters/send-draft
GetResponse
/newsletters/send-draft
GetResponse MAX US
/newsletters/send-draft
GetResponse MAX PL
/newsletters/send-draft

Request samples

application/json
Copy
Expand all Collapse all
{
  • "messageId": "N",
  • "sendSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "content":
    {
    },
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "newsletterId": "N",
  • "name": "New message",
  • "type": "broadcast",
  • "status": "enabled",
  • "editor": "custom",
  • "subject": "Annual report",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "campaign":
    {},
  • "sendOn": "2025-02-04T14:41:25+00:00",
  • "attachments":
    [
    ],
  • "sendSettings":
    {
    },
  • "sendMetrics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Total newsletter statistics

This makes it possible to fetch newsletter statistics based on the list of campaign or newsletter IDs (you can pass them in the query parameter - see the description below). Remember that all the statistics date ranges are returned in standard UTC period type objects. (See ISO 8601 standard). 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[newsletterId]
string

The list of newsletter resource IDs (string separated with '')

query[campaignId]
string

The list of campaign resource IDs (string separated with '')

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponders statistic split by time interval.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /newsletters/statistics
GetResponse
/newsletters/statistics
GetResponse MAX US
/newsletters/statistics
GetResponse MAX PL
/newsletters/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Autoresponders

Get a single autoresponder by its ID

Authorizations:
api-keyoauth2 (all)
path Parameters
autoresponderId
required
string
Example: "Q"

The autoresponder ID.

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The autoresponder details'

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /autoresponders/{autoresponderId}
GetResponse
/autoresponders/{autoresponderId}
GetResponse MAX US
/autoresponders/{autoresponderId}
GetResponse MAX PL
/autoresponders/{autoresponderId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "campaign":
    {},
  • "autoresponderId": "Q",
  • "name": "Message 2",
  • "subject": "test12",
  • "campaignId": "V",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "sendSettings":
    {
    },
  • "triggerSettings":
    {
    },
  • "statistics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Update autoresponder

The action-based autoresponder feature has been migrated over to marketing automation. Your existing autoresponders are now converted into workflows. You can no longer create and update action-based autoresponders using our API.

This method allows you to update an autoresponder. The same rules as in creating an autoresponder apply.

Authorizations:
api-keyoauth2 (all)
path Parameters
autoresponderId
required
string
Example: "Q"

The autoresponder ID.

Request Body schema: application/json
name
string [ 2 .. 128 ] characters

The autoresponder name

subject
string [ 2 .. 128 ] characters

The autoresponder message subject

campaignId
string

The campaign ID. The system will assign the autoresponder to a default campaign if you don't provide a specific campaign ID.

status
string (StatusEnum)
Enum:"enabled" "disabled"

The autoresponder status

editor
string (MessageEditorEnum)
Enum:"custom" "text" "getresponse" "legacy" "html2"

How the message was created: custom means a custom-made message, text means plain text content, getresponse means that the message was created using the GetResponse editor.

fromField
object (FromFieldReference)

The from email address used for the message

replyTo
object (FromFieldReference)

The email that will be used as a reply-to address

content
object (MessageContent)

The message content.

flags
Array of string (MessageFlagsArray)
Items Enum:"openrate" "clicktrack" "google_analytics"

The message flags.

sendSettings
object (AutoresponderSendSettings)

How the message will be delivered to the subscriber

triggerSettings
object (AutoresponderTriggerSettings)

The conditions that will trigger the autoresponder

Responses

200

The autoresponder details'

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /autoresponders/{autoresponderId}
GetResponse
/autoresponders/{autoresponderId}
GetResponse MAX US
/autoresponders/{autoresponderId}
GetResponse MAX PL
/autoresponders/{autoresponderId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Message 2",
  • "subject": "test12",
  • "campaignId": "V",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "sendSettings":
    {
    },
  • "triggerSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "campaign":
    {},
  • "autoresponderId": "Q",
  • "name": "Message 2",
  • "subject": "test12",
  • "campaignId": "V",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "sendSettings":
    {
    },
  • "triggerSettings":
    {
    },
  • "statistics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Delete autoresponder.

Authorizations:
api-keyoauth2 (all)
path Parameters
autoresponderId
required
string
Example: "Q"

The autoresponder ID.

Responses

204

Delete autoresponder

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /autoresponders/{autoresponderId}
GetResponse
/autoresponders/{autoresponderId}
GetResponse MAX US
/autoresponders/{autoresponderId}
GetResponse MAX PL
/autoresponders/{autoresponderId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

The statistics for a single autoresponder

This requst returns the statistics summary for a single given autoresponder. As in all statistics, you can change the date and time range (hourly daily monthly or total). Keep in mind that all statistics date ranges are given in standard UTC period type objects. (See ISO 8601 standard)

(https://app.getresponse.com/statistics.html?t=followup#total). 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.

Authorizations:
api-keyoauth2 (all)
path Parameters
autoresponderId
required
string
Example: "Q"

The autoresponder ID.

query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponder statistics split by time interval.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /autoresponders/{autoresponderId}/statistics
GetResponse
/autoresponders/{autoresponderId}/statistics
GetResponse MAX US
/autoresponders/{autoresponderId}/statistics
GetResponse MAX PL
/autoresponders/{autoresponderId}/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the autoresponder thumbnail

Authorizations:
api-keyoauth2 (all)
path Parameters
autoresponderId
required
string
Example: "Q"

The autoresponder ID.

query Parameters
size
string
Default: "default"
Enum:"default" "small"

The size of the autoresponder thumbnail

Responses

200

The autoresponder thumbnail.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /autoresponders/{autoresponderId}/thumbnail
GetResponse
/autoresponders/{autoresponderId}/thumbnail
GetResponse MAX US
/autoresponders/{autoresponderId}/thumbnail
GetResponse MAX PL
/autoresponders/{autoresponderId}/thumbnail

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the list of autoresponders.

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[subject]
string

Search autoresponder by subject

query[name]
string

Search autoresponder by name

query[status]
string
Enum:"enabled" "disabled"

Search autoresponder by status

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search autoresponder created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search autoresponder created to this date

query[campaignId]
string

Search autoresponder by campaign ID

query[type]
string
Enum:"timebase" "actionbase"

Search autoresponder by type

query[triggerType]
string
Value:"onday"

Search autoresponder by triggerType

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[subject]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by subject

sort[dayOfCycle]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by cycle day

sort[delivered]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by delivered

sort[openRate]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by open rate

sort[clickRate]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by click rate

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponders.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /autoresponders
GetResponse
/autoresponders
GetResponse MAX US
/autoresponders
GetResponse MAX PL
/autoresponders

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create autoresponder

The action-based autoresponder feature has been migrated over to marketing automation. Your existing autoresponders are now converted into workflows. You can no longer create and update action-based autoresponders using our API.

This request allows you to create an autoresponder. Remember to select the proper sendSettings - depending on type you need to fill corresponding setting (eg. if you selected type delay, then you MUST fill delayInHours field).

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
string [ 2 .. 128 ] characters

The autoresponder name

subject
required
string [ 2 .. 128 ] characters

The autoresponder message subject

campaignId
string

The campaign ID. The system will assign the autoresponder to a default campaign if you don't provide a specific campaign ID.

status
required
string (StatusEnum)
Enum:"enabled" "disabled"

The autoresponder status

editor
string (MessageEditorEnum)
Enum:"custom" "text" "getresponse" "legacy" "html2"

How the message was created: custom means a custom-made message, text means plain text content, getresponse means that the message was created using the GetResponse editor.

fromField
object (FromFieldReference)

The from email address used for the message

replyTo
object (FromFieldReference)

The email that will be used as a reply-to address

content
required
object (MessageContent)

The message content.

flags
Array of string (MessageFlagsArray)
Items Enum:"openrate" "clicktrack" "google_analytics"

The message flags.

sendSettings
required
object (AutoresponderSendSettings)

How the message will be delivered to the subscriber

triggerSettings
required
object (AutoresponderTriggerSettings)

The conditions that will trigger the autoresponder

Responses

201

The autoresponder details'

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /autoresponders
GetResponse
/autoresponders
GetResponse MAX US
/autoresponders
GetResponse MAX PL
/autoresponders

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Message 2",
  • "subject": "test12",
  • "campaignId": "V",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "sendSettings":
    {
    },
  • "triggerSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "campaign":
    {},
  • "autoresponderId": "Q",
  • "name": "Message 2",
  • "subject": "test12",
  • "campaignId": "V",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "flags":
    [
    ],
  • "sendSettings":
    {
    },
  • "triggerSettings":
    {
    },
  • "statistics":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

The statistics for all autoresponders

This returns the statistics summary for selected autoresponders. You can select them by specifying the autoresponder or campaign IDs. As in all statistics, you can change the date and time range (hourly daily monthly or total). Keep in mind that all statistics date ranges are given in standard UTC period type objects. (See ISO 8601 standard)

(https://app.getresponse.com/statistics.html?t=followup#total). 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[autoreponderId]
string

The list of autoresponder resource IDs (string separated with '')

query[campaignId]
string

The list of campaign resource IDs (string separated with '')

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponders statistic split by time interval.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /autoresponders/statistics
GetResponse
/autoresponders/statistics
GetResponse MAX US
/autoresponders/statistics
GetResponse MAX PL
/autoresponders/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

RSS Newsletters

Get RSS newsletter by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
rssNewsletterId
required
string
Example: "dGer"

The RSS newsletter ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The RSS newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /rss-newsletters/{rssNewsletterId}
GetResponse
/rss-newsletters/{rssNewsletterId}
GetResponse MAX US
/rss-newsletters/{rssNewsletterId}
GetResponse MAX PL
/rss-newsletters/{rssNewsletterId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "rssNewsletterId": "dGer",
  • "subject": "My rss to newsletters",
  • "name": "rsstest0",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "sendSettings":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Update RSS newsletter

Authorizations:
api-keyoauth2 (all)
path Parameters
rssNewsletterId
required
string
Example: "dGer"

The RSS newsletter ID

Request Body schema: application/json
flags
Array of string (MessageFlagsArray)
Items Enum:"openrate" "clicktrack" "google_analytics"

The message flags.

rssFeedUrl
string <uri>

The URL for the RSS Feed

subject
string [ 1 .. 255 ] characters

The RSS message subject

name
string [ 1 .. 255 ] characters

How your newsletters will be seen inside the application

status
string (StatusEnum)
Enum:"enabled" "disabled"

The status of the RSS newsletter

editor
string (MessageEditorEnum)
Enum:"custom" "text" "getresponse" "legacy" "html2"

How the message was created: custom means a custom-made message, text means plain text content, getresponse means that the message was created using the GetResponse editor.

fromField
object (FromFieldReference)

The 'From' email address used for the message

replyTo
object (FromFieldReference)

The email that will be used as a reply-to address

content
object (MessageContent)

The message content.

sendSettings
object (RssNewsletterSendSettingsDetails)

How the message will be delivered to the subscriber

Responses

200

The RSS newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /rss-newsletters/{rssNewsletterId}
GetResponse
/rss-newsletters/{rssNewsletterId}
GetResponse MAX US
/rss-newsletters/{rssNewsletterId}
GetResponse MAX PL
/rss-newsletters/{rssNewsletterId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "flags":
    [
    ],
  • "subject": "My rss to newsletters",
  • "name": "rsstest0",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "content":
    {
    },
  • "sendSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "rssNewsletterId": "dGer",
  • "subject": "My rss to newsletters",
  • "name": "rsstest0",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "sendSettings":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

Delete RSS newsletter

Authorizations:
api-keyoauth2 (all)
path Parameters
rssNewsletterId
required
string
Example: "dGer"

The RSS newsletter ID

Responses

204

Delete RSS newsletter.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /rss-newsletters/{rssNewsletterId}
GetResponse
/rss-newsletters/{rssNewsletterId}
GetResponse MAX US
/rss-newsletters/{rssNewsletterId}
GetResponse MAX PL
/rss-newsletters/{rssNewsletterId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get RSS newsletter statistics by ID

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
rssNewsletterId
required
string
Example: "dGer"

The RSS newsletter ID

query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponder statistics split by time interval.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /rss-newsletters/{rssNewsletterId}/statistics
GetResponse
/rss-newsletters/{rssNewsletterId}/statistics
GetResponse MAX US
/rss-newsletters/{rssNewsletterId}/statistics
GetResponse MAX PL
/rss-newsletters/{rssNewsletterId}/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the list of RSS newsletters

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[subject]
string

Search RSS newsletters by subject

query[status]
string
Enum:"enabled" "disabled"

Search RSS newsletters by status

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search RSS newsletters created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search RSS newsletters created to this date

query[campaignId]
string

Search RSS newsletters by campaign ID

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of RSS newsletters.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /rss-newsletters
GetResponse
/rss-newsletters
GetResponse MAX US
/rss-newsletters
GetResponse MAX PL
/rss-newsletters

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create RSS newsletter

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
flags
Array of string (MessageFlagsArray)
Items Enum:"openrate" "clicktrack" "google_analytics"

The message flags.

rssFeedUrl
required
string <uri>

The URL for the RSS Feed

subject
required
string [ 1 .. 255 ] characters

The RSS message subject

name
string [ 1 .. 255 ] characters

How your newsletters will be seen inside the application

status
required
string (StatusEnum)
Enum:"enabled" "disabled"

The status of the RSS newsletter

editor
string (MessageEditorEnum)
Enum:"custom" "text" "getresponse" "legacy" "html2"

How the message was created: custom means a custom-made message, text means plain text content, getresponse means that the message was created using the GetResponse editor.

fromField
required
object (FromFieldReference)

The 'From' email address used for the message

replyTo
object (FromFieldReference)

The email that will be used as a reply-to address

content
required
object (MessageContent)

The message content.

sendSettings
required
object (RssNewsletterSendSettingsDetails)

How the message will be delivered to the subscriber

Responses

201

The RSS newsletter details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /rss-newsletters
GetResponse
/rss-newsletters
GetResponse MAX US
/rss-newsletters
GetResponse MAX PL
/rss-newsletters

Request samples

application/json
Copy
Expand all Collapse all
{
  • "flags":
    [
    ],
  • "subject": "My rss to newsletters",
  • "name": "rsstest0",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "content":
    {
    },
  • "sendSettings":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "clickTracks":
    [],
  • "flags":
    [
    ],
  • "rssNewsletterId": "dGer",
  • "subject": "My rss to newsletters",
  • "name": "rsstest0",
  • "status": "enabled",
  • "editor": "custom",
  • "fromField":
    {},
  • "replyTo":
    {},
  • "content":
    {
    },
  • "sendSettings":
    {
    },
  • "createdOn": "2025-02-04T14:41:25+00:00"
}

The statistics for all RSS newsletters

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[groupBy]
string
Enum:"total" "hour" "day" "month"

Group results by time interval

query[rssNewsletterId]
string

The list of RSS newsletter resource IDs (string separated with ',')

query[campaignId]
string

The list of campaign resource IDs (string separated with ',')

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of autoresponders statistic split by time interval.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /rss-newsletters/statistics
GetResponse
/rss-newsletters/statistics
GetResponse MAX US
/rss-newsletters/statistics
GetResponse MAX PL
/rss-newsletters/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Legacy Landing Pages

Get single landing page by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
landingPageId
required
string
Example: "avYn"

The landing page ID.

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The landing pages details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /landing-pages/{landingPageId}
GetResponse
/landing-pages/{landingPageId}
GetResponse MAX US
/landing-pages/{landingPageId}
GetResponse MAX PL
/landing-pages/{landingPageId}

Response samples

application/json
Copy
Expand all Collapse all
[]

Get a list of landing pages

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[domain]
string

Search landing pages by domain

query[status]
string (StatusEnum)
Enum:"enabled" "disabled"

Search landing pages by status

query[subdomain]
string

Search landing pages by subdomain

query[metaTitle]
string

Search landing pages by metaTitle field

query[userDomain]
string

Search landing pages by user provided domain

query[campaignId]
string

Search landing pages by ID of the assigned campaign. Campaign ID must be encoded! You can get the campaign list with encoded IDs by calling the /v3/campaigns endpoint. You can search by multiple comma separated values eg. o5lx,34er.

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show landing pages created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show landing pages created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

sort[domain]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by domain

sort[campaignId]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by campaign

sort[metaTitle]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by metaTitle

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of landing pages.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /landing-pages
GetResponse
/landing-pages
GetResponse MAX US
/landing-pages
GetResponse MAX PL
/landing-pages

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

From Fields

Get a single 'From' address by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
fromFieldId
required
string
Example: "TTzW"

The 'From' address ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The 'From' address details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /from-fields/{fromFieldId}
GetResponse
/from-fields/{fromFieldId}
GetResponse MAX US
/from-fields/{fromFieldId}
GetResponse MAX PL
/from-fields/{fromFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "fromFieldId": "TTzW",
  • "email": "jsmith@example.com",
  • "rewrittenEmail": "jsmith@example.com",
  • "name": "John Smith",
  • "isActive": "true",
  • "isDefault": "true",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "domain":
    {
    }
}

Delete 'From' address

Authorizations:
api-keyoauth2 (all)
path Parameters
fromFieldId
required
string
Example: "TTzW"

The 'From' address ID

query Parameters
fromFieldIdToReplaceWith
string

The 'From' address ID that should replace the deleted 'From' address

Responses

204

Delete 'From' address.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /from-fields/{fromFieldId}
GetResponse
/from-fields/{fromFieldId}
GetResponse MAX US
/from-fields/{fromFieldId}
GetResponse MAX PL
/from-fields/{fromFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Set a 'From' address as default

Authorizations:
api-keyoauth2 (all)
path Parameters
fromFieldId
required
string
Example: "TTzW"

The 'From' address ID

Responses

200

Set a 'From' address as default.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /from-fields/{fromFieldId}/default
GetResponse
/from-fields/{fromFieldId}/default
GetResponse MAX US
/from-fields/{fromFieldId}/default
GetResponse MAX PL
/from-fields/{fromFieldId}/default

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the list of 'From' addresses

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[email]
string

Search 'From' address by email

query[name]
string <date>

Search 'From' address by name

query[isDefault]
boolean
Example: true

Search only default 'From' address

query[isActive]
boolean
Example: true

Search only active 'From' addresses

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort 'From' address by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of 'From' email addresses ('from fields').

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /from-fields
GetResponse
/from-fields
GetResponse MAX US
/from-fields
GetResponse MAX PL
/from-fields

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create 'From' address

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
email
required
string <email>

The email address

name
required
string [ 2 .. 64 ] characters

The name connected to the email address

Responses

201

The 'From' address details.

400

Request validation error

401

Authentication error

409

Conflict

429

The throttling limit has been reached

post /from-fields
GetResponse
/from-fields
GetResponse MAX US
/from-fields
GetResponse MAX PL
/from-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "email": "jsmith@example.com",
  • "name": "John Smith"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "fromFieldId": "TTzW",
  • "email": "jsmith@example.com",
  • "rewrittenEmail": "jsmith@example.com",
  • "name": "John Smith",
  • "isActive": "true",
  • "isDefault": "true",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "domain":
    {
    }
}

A/B tests

Get a single A/B test.

Get a single A/B test by ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
splittestId
required
string
Example: "9I"

The send settings for the A/B test

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

A/B test details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /splittests/{splittestId}
GetResponse
/splittests/{splittestId}
GetResponse MAX US
/splittests/{splittestId}
GetResponse MAX PL
/splittests/{splittestId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "splittestId": "A3r",
  • "name": "A/B test",
  • "campaign":
    {},
  • "status": "active",
  • "winningCriteria": "open",
  • "winningTarget": "10",
  • "stage": "queued",
  • "type": "content",
  • "samplingPercentage": "18",
  • "samplingTime": "86400",
  • "chooseWinning": "automatic",
  • "winningScoreOpens": "5",
  • "winningScoreClicks": "3",
  • "winningDelivered": "12",
  • "winningScheduleOn": "2015-06-25T20:05:10+0000",
  • "nextStepOn": "2015-07-25T20:05:10+0000",
  • "evaluationSkippedOn": "2015-07-25T20:05:10+0000",
  • "canceledOn": "2015-07-25T20:05:10+0000",
  • "createdOn": "2015-07-25T20:05:10+0000",
  • "newsletters":
    [],
  • "sendSettings":
    {
    }
}

The list of A/B tests.

The list of A/B tests. 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search A/B tests by name

query[type]
string

Search A/B tests by type

query[status]
string
Default: "active"
Enum:"active" "inactive"

Search A/B tests by status

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search A/B tests created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search A/B tests created to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of A/B tests.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /splittests
GetResponse
/splittests
GetResponse MAX US
/splittests
GetResponse MAX PL
/splittests

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

A/B tests - subject

Choose A/B test winner

Authorizations:
api-keyoauth2 (all)
path Parameters
abTestId
required
string
Example: "xyz"

A/B test ID

Request Body schema: application/json
variantId
required
string

The message variant ID. A variant identifier from https://apireference.getresponse.com/#operation/getAbtestsSubjectById.

Responses

204

Choose A/B test winner

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /ab-tests/subject/{abTestId}/winner
GetResponse
/ab-tests/subject/{abTestId}/winner
GetResponse MAX US
/ab-tests/subject/{abTestId}/winner
GetResponse MAX PL
/ab-tests/subject/{abTestId}/winner

Request samples

application/json
Copy
Expand all Collapse all
{
  • "variantId": "VpKJdr"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a single A/B test by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
abTestId
required
string
Example: "xyz"

A/B test ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

A/B test details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /ab-tests/subject/{abTestId}
GetResponse
/ab-tests/subject/{abTestId}
GetResponse MAX US
/ab-tests/subject/{abTestId}
GetResponse MAX PL
/ab-tests/subject/{abTestId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "abTestId": "A3r",
  • "name": "A/B test",
  • "campaign":
    {},
  • "fromField":
    {},
  • "replyTo":
    {},
  • "status": "active",
  • "stage": "preparing",
  • "deliverySettings":
    {
    },
  • "flags":
    [
    ],
  • "createdOn": "2015-07-25T20:05:10+0000",
  • "updatedOn": "2015-07-25T20:05:10+0000",
  • "winnerSendingStart": "2015-07-25T20:05:10+0000",
  • "statistics":
    {
    },
  • "variants":
    [
    ],
  • "sendSettings":
    {
    },
  • "editor": "html2",
  • "content":
    {
    }
}

Cancel A/B test

This method allows you to schedule the cancellation of an A/B test. Cancelling an A/B test is an asynchronous operation.

Authorizations:
api-keyoauth2 (all)
path Parameters
abTestId
required
string
Example: "xyz"

A/B test ID

Responses

202

A/B test cancellation scheduled

400

Request validation error

401

Authentication error

404

Resource not found

409

Conflict

429

The throttling limit has been reached

post /ab-tests/{abTestId}/cancel
GetResponse
/ab-tests/{abTestId}/cancel
GetResponse MAX US
/ab-tests/{abTestId}/cancel
GetResponse MAX PL
/ab-tests/{abTestId}/cancel

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Delete A/B test

This method allows you to delete an A/B test. Deletion is only permitted when the test is in one of the following states: draft, cancelled, finished, or completed.

Authorizations:
api-keyoauth2 (all)
path Parameters
abTestId
required
string
Example: "xyz"

A/B test ID

Responses

204

A/B test deleted successfully

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /ab-tests/{abTestId}
GetResponse
/ab-tests/{abTestId}
GetResponse MAX US
/ab-tests/{abTestId}
GetResponse MAX PL
/ab-tests/{abTestId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

The list of A/B tests

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search A/B tests by name

query[stage]
string
Enum:"preparing" "testing" "finished" "sending-winner" "cancelled" "draft" "completed"

Search A/B tests by stage

query[abTestId]
string

Search A/B tests by ID. You can search for multiple A/B tests using comma-separated values, for example, pgIH, CNXF

query[campaignId]
string

Search A/B tests by list ID. You can search for multiple A/B tests using comma-separated list IDs, for example, pgIH, CNXF

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[stage]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by stage

sort[sendOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by send date

sort[totalDelivered]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by total delivered

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of A/B tests

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /ab-tests/subject
GetResponse
/ab-tests/subject
GetResponse MAX US
/ab-tests/subject
GetResponse MAX PL
/ab-tests/subject

Response samples

application/json
Copy
Expand all Collapse all
[]

Create a new A/B test

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 1 .. 100 ] characters

A/B test name

campaign
required
object (CampaignReference)
fromField
required
object (FromFieldReference)
replyTo
object (FromFieldReference)
deliverySettings
required
object

The A/B test delivery settings

flags
Array of string
Items Enum:"clicktrack" "google_analytics" "ecommerce_tracking"
variants
required
Array of object

Message variants. Please note, the number of subject variants should be between 2 and 5

sendSettings
required
object

The send settings for the A/B test

content
required
object (MessageContent)

The message content.

Responses

201

A/B test details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /ab-tests/subject
GetResponse
/ab-tests/subject
GetResponse MAX US
/ab-tests/subject
GetResponse MAX PL
/ab-tests/subject

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "A/B test",
  • "campaign":
    {
    },
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "deliverySettings":
    {
    },
  • "flags":
    [
    ],
  • "variants":
    [
    ],
  • "sendSettings":
    {
    },
  • "content":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "abTestId": "A3r",
  • "name": "A/B test",
  • "campaign":
    {},
  • "fromField":
    {},
  • "replyTo":
    {},
  • "status": "active",
  • "stage": "preparing",
  • "deliverySettings":
    {
    },
  • "flags":
    [
    ],
  • "createdOn": "2015-07-25T20:05:10+0000",
  • "updatedOn": "2015-07-25T20:05:10+0000",
  • "winnerSendingStart": "2015-07-25T20:05:10+0000",
  • "statistics":
    {
    },
  • "variants":
    [
    ],
  • "sendSettings":
    {
    },
  • "editor": "html2",
  • "content":
    {
    }
}

Click Tracks

Click tracking refers to the data collected about each link click, such as how many people clicked it, how many clicks resulted in desired actions such as sales, forwards or subscriptions.

Get click tracked link details by click track ID

Authorizations:
api-keyoauth2 (all)
path Parameters
clickTrackId
required
string
Example: "C12t"
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The click track details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /click-tracks/{clickTrackId}
GetResponse
/click-tracks/{clickTrackId}
GetResponse MAX US
/click-tracks/{clickTrackId}
GetResponse MAX PL
/click-tracks/{clickTrackId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get click tracked links list

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search click tracks from messages created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search click tracks from messages created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by message date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of click tracks

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /click-tracks
GetResponse
/click-tracks
GetResponse MAX US
/click-tracks
GetResponse MAX PL
/click-tracks

Response samples

application/json
Copy
Expand all Collapse all
[]

Tags

Get tag by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
tagId
required
string

The tag ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The tag details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /tags/{tagId}
GetResponse
/tags/{tagId}
GetResponse MAX US
/tags/{tagId}
GetResponse MAX PL
/tags/{tagId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "tagId": "string",
  • "createdAt": "2024-07-20T06:24:14+0000",
  • "name": "My_Tag",
  • "color": "string"
}

Update tag by ID Deprecated

Updating the tag is not allowed. The method currently performs no update actions and only returns the current tag details.

Authorizations:
api-keyoauth2 (all)
path Parameters
tagId
required
string
Example: "vBd5"

The tag ID

Request Body schema: application/json
name
required
string [ 2 .. 64 ] characters ^[_a-zA-Z0-9]{2,64}$

The tag name

Responses

200

The tag details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /tags/{tagId}
GetResponse
/tags/{tagId}
GetResponse MAX US
/tags/{tagId}
GetResponse MAX PL
/tags/{tagId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "My_Tag"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "tagId": "string",
  • "createdAt": "2024-07-20T06:24:14+0000",
  • "name": "My_Tag",
  • "color": "string"
}

Delete tag by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
tagId
required
string
Example: "vBd5"

The tag ID

Responses

204

Tag deleted successfully.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /tags/{tagId}
GetResponse
/tags/{tagId}
GetResponse MAX US
/tags/{tagId}
GetResponse MAX PL
/tags/{tagId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the list of tags

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search tags by name

query[createdAt][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search tags created from this date

query[createdAt][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search tags created to this date

sort[createdAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort tags by creation date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of tags

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /tags
GetResponse
/tags
GetResponse MAX US
/tags
GetResponse MAX PL
/tags

Response samples

application/json
Copy
Expand all Collapse all
[]

Add a new tag

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 2 .. 64 ] characters ^[_a-zA-Z0-9]{2,64}$

The tag name

Responses

201

The tag details.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /tags
GetResponse
/tags
GetResponse MAX US
/tags
GetResponse MAX PL
/tags

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "My_Tag"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "tagId": "string",
  • "createdAt": "2024-07-20T06:24:14+0000",
  • "name": "My_Tag",
  • "color": "string"
}

GDPR Fields

Get GDPR Field details

Authorizations:
api-keyoauth2 (all)
path Parameters
gdprFieldId
required
string
Example: "MtY"

The GDPR field ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The details of the GDPR field

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /gdpr-fields/{gdprFieldId}
GetResponse
/gdpr-fields/{gdprFieldId}
GetResponse MAX US
/gdpr-fields/{gdprFieldId}
GetResponse MAX PL
/gdpr-fields/{gdprFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "gdprFieldId": "MtY",
  • "name": "Consent #1",
  • "createdOn": "2018-08-01T09:18:00+0000",
  • "latestVersion":
    {
    }
}

Get the GDPR fields list

Authorizations:
api-keyoauth2 (all)
query Parameters
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort fields by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort fields by creation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of GDPR fields

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /gdpr-fields
GetResponse
/gdpr-fields
GetResponse MAX US
/gdpr-fields
GetResponse MAX PL
/gdpr-fields

Response samples

application/json
Copy
Expand all Collapse all
[]

Legacy Forms

Get Legacy Form by ID.

Get Legacy Form by ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
webformId
required
string
Example: "3Va2e"

The webform (Legacy Form) ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The Legacy Form.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /webforms/{webformId}
GetResponse
/webforms/{webformId}
GetResponse MAX US
/webforms/{webformId}
GetResponse MAX PL
/webforms/{webformId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get Legacy Forms.

Get the list of Legacy Forms. 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search Legacy Forms by name

query[modifiedOn][from]
string <date-time>

Search Legacy Forms modified from this date

query[modifiedOn][to]
string <date-time>

Search Legacy Forms modified to this date

query[campaignId]
string

Search Legacy Forms by campaignId. Accepts multiple IDs separated with a comma

sort[modifiedOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort Legacy Forms by modification date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of Legacy Forms.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /webforms
GetResponse
/webforms
GetResponse MAX US
/webforms
GetResponse MAX PL
/webforms

Response samples

application/json
Copy
Expand all Collapse all
[]

Forms

Get form by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
formId
required
string
Example: "pL4e"

The form ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The form details.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /forms/{formId}
GetResponse
/forms/{formId}
GetResponse MAX US
/forms/{formId}
GetResponse MAX PL
/forms/{formId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "formId": "pL4e",
  • "webformId": "pL4e",
  • "name": "My first form",
  • "hasVariants": true,
  • "status": "published",
  • "createdOn": "2018-07-02T11:22:33+0000",
  • "statistics":
    {
    },
  • "campaign":
    {},
  • "settings":
    {
    },
  • "variants":
    [
    ]
}

Get the list of form variants (A/B tests)

Authorizations:
api-keyoauth2 (all)
path Parameters
formId
required
string
Example: "pL4e"

The form ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The list of form variants.

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /forms/{formId}/variants
GetResponse
/forms/{formId}/variants
GetResponse MAX US
/forms/{formId}/variants
GetResponse MAX PL
/forms/{formId}/variants

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the list of forms.

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search forms by name

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search forms created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search forms created to this date

query[campaignId]
string

Search forms assigned to this list (campaign). You can pass multiple comma-separated values, eg. Xd1P,sC7r

query[status]
string
Enum:"enabled" "disabled" "published" "unpublished" "draft"

Search by status. Note: disabled includes both unpublished and draft and enabled equals published

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"
sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"
sort[visitors]
string (SortOrderEnum)
Enum:"ASC" "DESC"
sort[uniqueVisitors]
string (SortOrderEnum)
Enum:"ASC" "DESC"
sort[subscribed]
string (SortOrderEnum)
Enum:"ASC" "DESC"
sort[subscriptionRate]
string (SortOrderEnum)
Enum:"ASC" "DESC"
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of forms.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /forms
GetResponse
/forms
GetResponse MAX US
/forms
GetResponse MAX PL
/forms

Response samples

application/json
Copy
Expand all Collapse all
[]

Workflows

Get workflow by ID

Get a single workflow by ID.

Authorizations:
api-keyoauth2 (all)
path Parameters
workflowId
required
string
Example: "3Va2e"

The workflow ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The workflow

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /workflow/{workflowId}
GetResponse
/workflow/{workflowId}
GetResponse MAX US
/workflow/{workflowId}
GetResponse MAX PL
/workflow/{workflowId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "workflowId": "pxs",
  • "name": "My draft",
  • "status": "active",
  • "dateStart": "2014-02-12T15:19:21+0000",
  • "dateStop": "2014-04-12T15:19:21+0000",
  • "subscriberStatistics":
    {
    }
}

Update workflow

Update single workflow.

Authorizations:
api-keyoauth2 (all)
path Parameters
workflowId
required
string
Example: "3Va2e"

The workflow ID

Request Body schema: application/json
status
required
string
Enum:"active" "inactive" "incomplete"

An 'incomplete' status means that the workflow is a 'draft' in the web panel

Responses

200

The workflow

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /workflow/{workflowId}
GetResponse
/workflow/{workflowId}
GetResponse MAX US
/workflow/{workflowId}
GetResponse MAX PL
/workflow/{workflowId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "status": "active"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "workflowId": "pxs",
  • "name": "My draft",
  • "status": "active",
  • "dateStart": "2014-02-12T15:19:21+0000",
  • "dateStop": "2014-04-12T15:19:21+0000",
  • "subscriberStatistics":
    {
    }
}

Get workflows

Get the list of workflows.

Authorizations:
api-keyoauth2 (all)
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of workflows

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /workflow
GetResponse
/workflow
GetResponse MAX US
/workflow
GetResponse MAX PL
/workflow

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Custom Events

Get custom events by custom event ID

Authorizations:
api-keyoauth2 (all)
path Parameters
customEventId
required
string
Example: "hp2"

The custom event ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The custom event details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /custom-events/{customEventId}
GetResponse
/custom-events/{customEventId}
GetResponse MAX US
/custom-events/{customEventId}
GetResponse MAX PL
/custom-events/{customEventId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "customEventId": "hy7",
  • "createdOn": "2019-08-19T11:32:34+0000",
  • "name": "sample_custom_event",
  • "attributes":
    [
    ]
}

Update custom event details

Authorizations:
api-keyoauth2 (all)
path Parameters
customEventId
required
string
Example: "hp2"

The custom event ID

Request Body schema: application/json
name
required
string^[a-z0-9_]{3,64}$

Unique name of custom event

attributes
required
Array of object (CustomEventAttributeDetails)

Optional collection of attributes

Responses

200

The custom event details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /custom-events/{customEventId}
GetResponse
/custom-events/{customEventId}
GetResponse MAX US
/custom-events/{customEventId}
GetResponse MAX PL
/custom-events/{customEventId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "sample_custom_event",
  • "attributes":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "customEventId": "hy7",
  • "createdOn": "2019-08-19T11:32:34+0000",
  • "name": "sample_custom_event",
  • "attributes":
    [
    ]
}

Delete a custom event by custom event ID

Authorizations:
api-keyoauth2 (all)
path Parameters
customEventId
required
string
Example: "hp2"

The custom event ID

Responses

204

Delete custom event

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /custom-events/{customEventId}
GetResponse
/custom-events/{customEventId}
GetResponse MAX US
/custom-events/{customEventId}
GetResponse MAX PL
/custom-events/{customEventId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a list of custom events

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search custom events by name

query[hasAttributes]
string (StringBooleanEnum)
Enum:"true" "false"

Search custom events with or without attributes

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of custom events

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /custom-events
GetResponse
/custom-events
GetResponse MAX US
/custom-events
GetResponse MAX PL
/custom-events

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create custom event

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string^[a-z0-9_]{3,64}$

Unique name of custom event

attributes
required
Array of object (CustomEventAttributeDetails)

Optional collection of attributes

Responses

201

The custom event details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /custom-events
GetResponse
/custom-events
GetResponse MAX US
/custom-events
GetResponse MAX PL
/custom-events

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "sample_custom_event",
  • "attributes":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "customEventId": "hy7",
  • "createdOn": "2019-08-19T11:32:34+0000",
  • "name": "sample_custom_event",
  • "attributes":
    [
    ]
}

Trigger a custom event

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 3 .. 64 ] characters ^[a-z0-9_]{3,64}$

The name of custom event. Custom event with this name must already exist

contactId
required
string

The contact ID

attributes
Array of object (TriggerCustomEventAttribute)

The attributes for the trigger

Responses

201

Empty response

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /custom-events/trigger
GetResponse
/custom-events/trigger
GetResponse MAX US
/custom-events/trigger
GetResponse MAX PL
/custom-events/trigger

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "lesson_finished",
  • "contactId": "lTgH5",
  • "attributes":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Tracking

Get Tracking JavaScript code snippets

With code snippets you will be able to track Purchases, Abandoned carts, and Visited URLs. Find more in our Help Center.

Authorizations:
api-keyoauth2 (all)

Responses

200

The Tracking Snippets

401

Authentication error

429

The throttling limit has been reached

get /tracking
GetResponse
/tracking
GetResponse MAX US
/tracking
GetResponse MAX PL
/tracking

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get the list of "Facebook Pixels"

Returns the name and ID of "Facebook Pixels" assigned to a user's account.

Authorizations:
api-keyoauth2 (all)

Responses

200

"Facebook Pixel" details

401

Authentication error

429

The throttling limit has been reached

get /tracking/facebook-pixels
GetResponse
/tracking/facebook-pixels
GetResponse MAX US
/tracking/facebook-pixels
GetResponse MAX PL
/tracking/facebook-pixels

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Addresses

Get an address by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
addressId
required
string
Example: "k9"

The address ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The address details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /addresses/{addressId}
GetResponse
/addresses/{addressId}
GetResponse MAX US
/addresses/{addressId}
GetResponse MAX PL
/addresses/{addressId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "addressId": "k9",
  • "countryCode": "POL",
  • "countryName": "Poland",
  • "name": "some_shipping_address",
  • "firstName": "John",
  • "lastName": "Doe",
  • "address1": "Arkonska 6",
  • "address2": "",
  • "city": "Gdansk",
  • "zip": "80-387",
  • "province": "pomorskie",
  • "provinceCode": "",
  • "phone": "1122334455",
  • "company": "GetResponse",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Update address

Update an existing address. You should send only those fields that need to be changed. The rest of the properties will stay the same.

Authorizations:
api-keyoauth2 (all)
path Parameters
addressId
required
string
Example: "k9"

The address ID

Request Body schema: application/json
countryCode
string 3 characters

The country code (ISO 3166-1 alpha-3)

name
string [ 3 .. 128 ] characters
firstName
string [ 0 .. 64 ] characters
lastName
string [ 0 .. 64 ] characters
address1
string [ 0 .. 255 ] characters

Address line 1

address2
string [ 0 .. 255 ] characters

Address line 2

city
string [ 0 .. 128 ] characters
zip
string [ 0 .. 64 ] characters

The ZIP/postal code, free text

province
string [ 0 .. 255 ] characters
provinceCode
string [ 0 .. 64 ] characters

The province code, free text

phone
string [ 0 .. 255 ] characters

The phone number, free text

company
string [ 0 .. 128 ] characters

The company name, free text

Responses

200

The address details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /addresses/{addressId}
GetResponse
/addresses/{addressId}
GetResponse MAX US
/addresses/{addressId}
GetResponse MAX PL
/addresses/{addressId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "countryCode": "POL",
  • "name": "some_shipping_address",
  • "firstName": "John",
  • "lastName": "Doe",
  • "address1": "Arkonska 6",
  • "address2": "",
  • "city": "Gdansk",
  • "zip": "80-387",
  • "province": "pomorskie",
  • "provinceCode": "",
  • "phone": "1122334455",
  • "company": "GetResponse"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "addressId": "k9",
  • "countryCode": "POL",
  • "countryName": "Poland",
  • "name": "some_shipping_address",
  • "firstName": "John",
  • "lastName": "Doe",
  • "address1": "Arkonska 6",
  • "address2": "",
  • "city": "Gdansk",
  • "zip": "80-387",
  • "province": "pomorskie",
  • "provinceCode": "",
  • "phone": "1122334455",
  • "company": "GetResponse",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Delete address

Authorizations:
api-keyoauth2 (all)
path Parameters
addressId
required
string
Example: "k9"

The address ID

Responses

204

Empty response

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /addresses/{addressId}
GetResponse
/addresses/{addressId}
GetResponse MAX US
/addresses/{addressId}
GetResponse MAX PL
/addresses/{addressId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a list of addresses

Sending a GET request to this URL returns collection of address resources.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • name
  • firstName
  • lastName
  • address1
  • address2
  • city
  • zip
  • province
  • provinceCode
  • phone
  • company
  • createdOn

The name field can be a pattern and we'll try to match this phrase.

You can specify which page of the results you want and how many results per page to display. You can also specify the sort-order using one or more of the allowed fields (listed below in the request params section).

Last but not least, you can even specify which fields from a resource you want to get. If you pass the param fields with the list of fields (separated by a comma [,]) we'll return the list of resources with only those fields (we'll always add a resource ID to ensure that you can use that data later on) 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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search addresses by name

query[firstName]
string

Search addresses by first name

query[lastName]
string

Search addresses by last name

query[address1]
string

Search addresses by address1 field

query[address2]
string

Search addresses by address2 field

query[city]
string

Search addresses by city

query[zip]
string

Search addresses by ZIP

query[province]
string

Search addresses by province

query[provinceCode]
string

Search addresses by province code

query[phone]
string

Search addresses by phone

query[company]
string

Search addresses by company

query[createdOn][from]
string <date-time>

Search addresses created from this date

query[createdOn][to]
string <date-time>

Search addresses created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of addresses.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /addresses
GetResponse
/addresses
GetResponse MAX US
/addresses
GetResponse MAX PL
/addresses

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create address

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
countryCode
required
string 3 characters

The country code (ISO 3166-1 alpha-3)

name
required
string [ 3 .. 128 ] characters
firstName
string [ 0 .. 64 ] characters
lastName
string [ 0 .. 64 ] characters
address1
string [ 0 .. 255 ] characters

Address line 1

address2
string [ 0 .. 255 ] characters

Address line 2

city
string [ 0 .. 128 ] characters
zip
string [ 0 .. 64 ] characters

The ZIP/postal code, free text

province
string [ 0 .. 255 ] characters
provinceCode
string [ 0 .. 64 ] characters

The province code, free text

phone
string [ 0 .. 255 ] characters

The phone number, free text

company
string [ 0 .. 128 ] characters

The company name, free text

Responses

201

The address details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /addresses
GetResponse
/addresses
GetResponse MAX US
/addresses
GetResponse MAX PL
/addresses

Request samples

application/json
Copy
Expand all Collapse all
{
  • "countryCode": "POL",
  • "name": "some_shipping_address",
  • "firstName": "John",
  • "lastName": "Doe",
  • "address1": "Arkonska 6",
  • "address2": "",
  • "city": "Gdansk",
  • "zip": "80-387",
  • "province": "pomorskie",
  • "provinceCode": "",
  • "phone": "1122334455",
  • "company": "GetResponse"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "addressId": "k9",
  • "countryCode": "POL",
  • "countryName": "Poland",
  • "name": "some_shipping_address",
  • "firstName": "John",
  • "lastName": "Doe",
  • "address1": "Arkonska 6",
  • "address2": "",
  • "city": "Gdansk",
  • "zip": "80-387",
  • "province": "pomorskie",
  • "provinceCode": "",
  • "phone": "1122334455",
  • "company": "GetResponse",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Carts

Get shop carts

Sending a GET request to this URL returns a collection of cart resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • externalId
  • createdOn

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search carts created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search carts created to this date

query[externalId]
string

Search cart by external ID

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of carts

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /shops/{shopId}/carts
GetResponse
/shops/{shopId}/carts
GetResponse MAX US
/shops/{shopId}/carts
GetResponse MAX PL
/shops/{shopId}/carts

Response samples

application/json
Copy
Expand all Collapse all
[]

Create cart

Sending a POST request to this URL will create a new cart resource.

In order to create a new cart, you need to send the cart resource in the body of the request (remember that you need to serialize the body into a JSON string)

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
contactId
required
string

The ID of the contact that the cart belongs to. You must first create the contact using POST /v3/contacts, or if it already exists, using GET /v3/contacts

totalPrice
required
number <double> [ 0 .. 999999999999.99 ]

The total cart price, tax excluded

totalTaxPrice
number <double> [ 0 .. 999999999999.99 ]

The total cart price, tax included

currency
required
string 3 characters

The currency code (ISO 4217)

selectedVariants
required
Array of object (NewCartSelectedProductVariant)
externalId
string

The external ID is the identifying string or number of the cart, given by another software

cartUrl
string <url>

The external cart URL

Responses

201

The cart details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/carts
GetResponse
/shops/{shopId}/carts
GetResponse MAX US
/shops/{shopId}/carts
GetResponse MAX PL
/shops/{shopId}/carts

Request samples

application/json
Copy
Expand all Collapse all
{
  • "contactId": "Vp",
  • "totalPrice": 1234.56,
  • "totalTaxPrice": 1334.56,
  • "currency": "USD",
  • "selectedVariants":
    [
    ],
  • "externalId": "ext-1234",
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get cart by ID

This method returns cart with the given cartId in the context of a given shopId

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

cartId
required
string
Example: "V"

The cart ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The cart details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/carts/{cartId}
GetResponse
/shops/{shopId}/carts/{cartId}
GetResponse MAX US
/shops/{shopId}/carts/{cartId}
GetResponse MAX PL
/shops/{shopId}/carts/{cartId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update cart

Update properties of the shop cart. You should send only those fields that need to be changed. The rest of the properties will stay the same.

In case of selectedVariants, when the collection is updated, the old one is completely removed.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

cartId
required
string
Example: "V"

The cart ID

Request Body schema: application/json
contactId
string

The ID of the contact that the cart belongs to. You must first create the contact using POST /v3/contacts, or if it already exists, using GET /v3/contacts

totalPrice
number <double> [ 0 .. 999999999999.99 ]

The total cart price, tax excluded

totalTaxPrice
number <double> [ 0 .. 999999999999.99 ]

The total cart price, tax included

currency
string 3 characters

The currency code (ISO 4217)

selectedVariants
Array of object (NewCartSelectedProductVariant)
externalId
string

The external ID is the identifying string or number of the cart, given by another software

cartUrl
string <url>

The external cart URL

Responses

200

The cart details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/carts/{cartId}
GetResponse
/shops/{shopId}/carts/{cartId}
GetResponse MAX US
/shops/{shopId}/carts/{cartId}
GetResponse MAX PL
/shops/{shopId}/carts/{cartId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "contactId": "Vp",
  • "totalPrice": 1234.56,
  • "totalTaxPrice": 1334.56,
  • "currency": "USD",
  • "selectedVariants":
    [
    ],
  • "externalId": "ext-1234",
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete cart

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

cartId
required
string
Example: "V"

The cart ID

Responses

204

Delete cart

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/carts/{cartId}
GetResponse
/shops/{shopId}/carts/{cartId}
GetResponse MAX US
/shops/{shopId}/carts/{cartId}
GetResponse MAX PL
/shops/{shopId}/carts/{cartId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Categories

Get the shop categories list

Sending a GET request to this URL returns a collection of category resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by: *name

  • createdOn
  • parentId

The name fields can be a pattern and we'll try to match this phrase.

The parentId will search for sub-categories of a given parent category.

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[name]
string

Search category by name

query[parentId]
string

Search categories by their parent

query[externalId]
string

Search categories by external ID

search[createdAt][from]
string <date-time>

Show categories starting from this date

search[createdAt][to]
string <date-time>

Show categories starting to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of categories

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /shops/{shopId}/categories
GetResponse
/shops/{shopId}/categories
GetResponse MAX US
/shops/{shopId}/categories
GetResponse MAX PL
/shops/{shopId}/categories

Response samples

application/json
Copy
Expand all Collapse all
[]

Create category

Create shop category. You can pass the parentId parameter to create a sub-category of a given parent. Unlike most POST methods, this call is idempotent, that is: sending the same request 10 times will not create 10 new categories. Only one category will be created.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
name
required
string [ 2 .. 64 ] characters

The name of the category

parentId
string [ 2 .. 64 ] characters

The parent category ID

isDefault
boolean

This is a default category

url
string <uri> <= 2048 characters

The external URL to the category

externalId
string <= 255 characters

The external ID is the identifying string or number of the category given by another software

Responses

201

The category details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/categories
GetResponse
/shops/{shopId}/categories
GetResponse MAX US
/shops/{shopId}/categories
GetResponse MAX PL
/shops/{shopId}/categories

Request samples

application/json
Copy
Expand all Collapse all
{}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a single category by ID

This method returns a category according to the given categoryId.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

categoryId
required
string
Example: "C3s"

The category ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The category details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/categories/{categoryId}
GetResponse
/shops/{shopId}/categories/{categoryId}
GetResponse MAX US
/shops/{shopId}/categories/{categoryId}
GetResponse MAX PL
/shops/{shopId}/categories/{categoryId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update category

Update the properties of the shop category. You can specify a parentId to assign a category as sub-category for an existing category. You should send only those fields that need to be changed. The rest of the properties will stay the same.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

categoryId
required
string
Example: "C3s"

The category ID

Request Body schema: application/json
name
string [ 2 .. 64 ] characters

The name of the category

parentId
string [ 2 .. 64 ] characters

The parent category ID

isDefault
boolean

This is a default category

url
string <uri> <= 2048 characters

The external URL to the category

externalId
string <= 255 characters

The external ID is the identifying string or number of the category given by another software

Responses

200

The category details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/categories/{categoryId}
GetResponse
/shops/{shopId}/categories/{categoryId}
GetResponse MAX US
/shops/{shopId}/categories/{categoryId}
GetResponse MAX PL
/shops/{shopId}/categories/{categoryId}

Request samples

application/json
Copy
Expand all Collapse all
{}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete category

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

categoryId
required
string
Example: "C3s"

The category ID

Responses

204

Delete category

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/categories/{categoryId}
GetResponse
/shops/{shopId}/categories/{categoryId}
GetResponse MAX US
/shops/{shopId}/categories/{categoryId}
GetResponse MAX PL
/shops/{shopId}/categories/{categoryId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Meta Fields

Get the shop meta fields

Sending a GET request to this URL returns a collection of meta field resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • name
  • value
  • description
  • createdOn

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[name]
string

Search meta fields by name

query[description]
string

Search meta fields by description

query[value]
string

Search meta fields by value

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search meta fields created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search meta fields created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of meta fields

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/meta-fields
GetResponse
/shops/{shopId}/meta-fields
GetResponse MAX US
/shops/{shopId}/meta-fields
GetResponse MAX PL
/shops/{shopId}/meta-fields

Response samples

application/json
Copy
Expand all Collapse all
[]

Create meta field

Sending a POST request to this URL will create a new meta field resource.

In order to create a new meta field, you need to send a meta field resource in the body of the request (remember that you need to serialize the body into a JSON string)

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
name
required
string [ 3 .. 63 ] characters

The meta field name

value
required
string [ 0 .. 65000 ] characters

The meta field value

valueType
required
string
Enum:"string" "integer"

The value type enumerable

description
string [ 0 .. 255 ] characters

The meta field description

Responses

201

The meta field details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/meta-fields
GetResponse
/shops/{shopId}/meta-fields
GetResponse MAX US
/shops/{shopId}/meta-fields
GetResponse MAX PL
/shops/{shopId}/meta-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Shoe size",
  • "value": "11",
  • "valueType": "integer",
  • "description": "Description of this meta field"
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get the meta field by ID

This method returns meta field with a given metaFieldId in the context of a given shopId

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

metaFieldId
required
string
Example: "hgF"

The metafield ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The meta field details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/meta-fields/{metaFieldId}
GetResponse
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX US
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX PL
/shops/{shopId}/meta-fields/{metaFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update meta field

Update the properties of a shop's meta field. You should send only those fields that need to be changed. The rest of the properties will stay the same.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

metaFieldId
required
string
Example: "hgF"

The metafield ID

Request Body schema: application/json
name
string [ 3 .. 63 ] characters

The meta field name

value
string [ 0 .. 65000 ] characters

The meta field value

valueType
string
Enum:"string" "integer"

The value type enumerable

description
string [ 0 .. 255 ] characters

The meta field description

Responses

200

The meta field details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/meta-fields/{metaFieldId}
GetResponse
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX US
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX PL
/shops/{shopId}/meta-fields/{metaFieldId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Shoe size",
  • "value": "11",
  • "valueType": "integer",
  • "description": "Description of this meta field"
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete meta field

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

metaFieldId
required
string
Example: "hgF"

The metafield ID

Responses

204

Delete meta field

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/meta-fields/{metaFieldId}
GetResponse
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX US
/shops/{shopId}/meta-fields/{metaFieldId}
GetResponse MAX PL
/shops/{shopId}/meta-fields/{metaFieldId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Orders

Get the list of orders

Sending a GET request to this URL returns a collection of order resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • description
  • status
  • externalId
  • processedAt

The description fields can be a pattern and we'll try to match this phrase.

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.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[description]
string

Search order by description

query[status]
string

Search order by status

query[externalId]
string

Search order by external ID

query[processedAt][from]
string <date-time>

Show orders processed from this date

query[processedAt][to]
string <date-time>

Show orders processed to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of orders

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /shops/{shopId}/orders
GetResponse
/shops/{shopId}/orders
GetResponse MAX US
/shops/{shopId}/orders
GetResponse MAX PL
/shops/{shopId}/orders

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create order

Sending a POST request to this URL will create a new order resource.

In order to create a new order, you need to send the order resource in the body of the request (remember that you need to serialize the body into a JSON string).

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
additionalFlags
string
Example: "skipAutomation"

The additional flags parameter with the value skipAutomation will skip the triggering Make a purchase element in an automated workflow

Request Body schema: application/json
selectedVariants
required
Array of object (NewSelectedProductVariant)
contactId
required
string

Create a contact by using POST /v3/contacts. Or, if the contact already exists, using GET /v3/contacts

orderUrl
string <uri> <= 2048 characters

The external URL for an order

externalId
string <= 255 characters

The external ID is the identifying string or number of the order given by another software

totalPrice
required
number <double> [ 0 .. 999999999999.99 ]

The total price of an order

totalPriceTax
number <double> [ 0 .. 999999999999.99 ]

The total price tax of an order

currency
required
string

The order currency code (ISO 4217)

status
string <= 64 characters

The status value

cartId
string

Create a cart by using POST /v3/shops/{shopId}/carts

description
string

The order description

shippingPrice
number <double> [ 0 .. 999999999999.99 ]

The shipping price for an order

shippingAddress
object (NewAddress)

The shipping address for an order

billingStatus
string

The billing status of an order

billingAddress
object (NewAddress)

The billing address for an order

processedAt
string <date-time>

The exact time an order was made

metaFields
Array of object (NewMetaField)

Responses

201

The order details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/orders
GetResponse
/shops/{shopId}/orders
GetResponse MAX US
/shops/{shopId}/orders
GetResponse MAX PL
/shops/{shopId}/orders

Request samples

application/json
Copy
Expand all Collapse all
{
  • "selectedVariants":
    [
    ],
  • "contactId": "k8u",
  • "externalId": "DH71239",
  • "totalPrice": 716,
  • "totalPriceTax": 358.67,
  • "currency": "PLN",
  • "status": "NEW",
  • "cartId": "QBNgBR",
  • "description": "More information about order.",
  • "shippingPrice": 23,
  • "shippingAddress":
    {
    },
  • "billingStatus": "PENDING",
  • "billingAddress":
    {
    },
  • "processedAt": "2025-02-04T14:41:25+00:00",
  • "metaFields":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a single order by ID

This method returns the order according to the given orderId.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

orderId
required
string
Example: "fOh"

The order ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The order details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/orders/{orderId}
GetResponse
/shops/{shopId}/orders/{orderId}
GetResponse MAX US
/shops/{shopId}/orders/{orderId}
GetResponse MAX PL
/shops/{shopId}/orders/{orderId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update order

Update the properties of a shop's order. You should send only those fields that need to be changed. The rest of the properties will stay the same. However, in case of billingAddress and shippingAddress, you must send the entire representation. Individual fields can't be updated. If you want to update individual fields of an address, you can do so using POST /v3/addresses/{addressId}.

In case of selectedVariants, when the collection is updated, the old collection is completely removed. The same goes for meta fields. Individual fields can't be updated either. The full representations of selectedVariants and metaFields must be sent instead.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

orderId
required
string
Example: "fOh"

The order ID

query Parameters
additionalFlags
string
Example: "skipAutomation"

The additional flags parameter with the value skipAutomation will skip the triggering Make a purchase element in an automated workflow

Request Body schema: application/json
contactId
string

Create a contact by using POST /v3/contacts. Or, if the contact already exists, using GET /v3/contacts

orderUrl
string <uri> <= 2048 characters

The external URL for an order

externalId
string <= 255 characters

The external ID is the identifying string or number of the order given by another software

totalPrice
number <double> [ 0 .. 999999999999.99 ]

The total price of an order

totalPriceTax
number <double> [ 0 .. 999999999999.99 ]

The total price tax of an order

currency
string

The order currency code (ISO 4217)

status
string <= 64 characters

The status value

cartId
string

Create a cart by using POST /v3/shops/{shopId}/carts

description
string

The order description

shippingPrice
number <double> [ 0 .. 999999999999.99 ]

The shipping price for an order

shippingAddress
object (NewAddress)

The shipping address for an order

billingStatus
string

The billing status of an order

billingAddress
object (NewAddress)

The billing address for an order

processedAt
string <date-time>

The exact time an order was made

metaFields
Array of object (NewMetaField)

Responses

200

The order details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /shops/{shopId}/orders/{orderId}
GetResponse
/shops/{shopId}/orders/{orderId}
GetResponse MAX US
/shops/{shopId}/orders/{orderId}
GetResponse MAX PL
/shops/{shopId}/orders/{orderId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "contactId": "k8u",
  • "externalId": "DH71239",
  • "totalPrice": 716,
  • "totalPriceTax": 358.67,
  • "currency": "PLN",
  • "status": "NEW",
  • "cartId": "QBNgBR",
  • "description": "More information about order.",
  • "shippingPrice": 23,
  • "shippingAddress":
    {
    },
  • "billingStatus": "PENDING",
  • "billingAddress":
    {
    },
  • "processedAt": "2025-02-04T14:41:25+00:00",
  • "metaFields":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete order

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

orderId
required
string
Example: "fOh"

The order ID

Responses

204

Delete order

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/orders/{orderId}
GetResponse
/shops/{shopId}/orders/{orderId}
GetResponse MAX US
/shops/{shopId}/orders/{orderId}
GetResponse MAX PL
/shops/{shopId}/orders/{orderId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Products

Get a product list.

Sending a GET request to this URL returns a collection of product resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • name
  • vendor
  • category
  • categoryId
  • externalId
  • variantName
  • metaFieldNames
  • metaFieldValues
  • createdOn

The metaFieldNames and metaFieldValues fields can be a list of values separated by a comma [,]. 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.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[name]
string

Search products by name

query[vendor]
string

Search products by vendor

query[category]
string

Search products by category name

query[categoryId]
string

Search products by category ID

query[externalId]
string

Search products by external ID

query[variantName]
string

Search products by product variant name

query[metaFieldNames]
string

Search products by meta field name (the list of names must be separated by a comma [,])

query[metaFieldValues]
string

Search products by meta field value (the list of values must be separated by a comma [,])

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search products created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search products created to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of products

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/products
GetResponse
/shops/{shopId}/products
GetResponse MAX US
/shops/{shopId}/products
GetResponse MAX PL
/shops/{shopId}/products

Response samples

application/json
Copy
Expand all Collapse all
[]

Create product

Sending a POST request to this URL will create a new product resource.

In order to create a new product, you need to send the product resource in the body of the request (remember that you need to serialize the body into a JSON string)

You don't need a separate endpoint for each element (e.g. variant, category, meta-field). You can create them all with this method.

Please note that categories aren't required, but if a product has at least one category, then one of those categories must be marked as default. This can be set by field isDefault. If none of the elements contains isDefault=true, then the system picks the first one from the collection by default.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
name
required
string [ 2 .. 255 ] characters

The product name

type
string [ 2 .. 64 ] characters

The product type

url
string <uri> <= 2048 characters

The external URL for the product

vendor
string [ 2 .. 64 ] characters

The product vendor

externalId
string <= 255 characters

The external ID is the identifying string or number of the product given by another software

categories
Array of object (NewProductCategory)
variants
required
Array of object (NewProductVariant)
metaFields
Array of object (NewMetaField)

Responses

201

The product details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products
GetResponse
/shops/{shopId}/products
GetResponse MAX US
/shops/{shopId}/products
GetResponse MAX PL
/shops/{shopId}/products

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Monster Cap",
  • "type": "Headwear",
  • "vendor": "GetResponse",
  • "externalId": "123456",
  • "categories":
    [],
  • "variants":
    [
    ],
  • "metaFields":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a single product by ID

This method returns product according to the given productId in the context of a given shopId.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The product details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/products/{productId}
GetResponse
/shops/{shopId}/products/{productId}
GetResponse MAX US
/shops/{shopId}/products/{productId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update product

Update the properties of a shop's product. You should only send those fields that need to be changed. The remaining properties will stay the same. However, when updating variants, categories, and meta fields, you need to send entire collections. Individual fields can't be updated. If you want to update particular fields, you can do so using their specific endpoints, i.e.:

  • categories - POST /v3/shops/{shopId}/categories/{categoryId}
  • variants - POST /v3/shops/{shopId}/products/{productId}/variants/{variantId}
  • metaFields - POST /v3/shops/{shopId}/meta-fields/{metaFieldId}
Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

Request Body schema: application/json
name
string [ 2 .. 255 ] characters

The product name

type
string [ 2 .. 64 ] characters

The product type

url
string <uri> <= 2048 characters

The external URL for the product

vendor
string [ 2 .. 64 ] characters

The product vendor

externalId
string <= 255 characters

The external ID is the identifying string or number of the product given by another software

categories
Array of object (NewProductCategory)
variants
Array of object (NewProductVariant)
metaFields
Array of object (NewMetaField)

Responses

200

The product details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products/{productId}
GetResponse
/shops/{shopId}/products/{productId}
GetResponse MAX US
/shops/{shopId}/products/{productId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Monster Cap",
  • "type": "Headwear",
  • "vendor": "GetResponse",
  • "externalId": "123456",
  • "categories":
    [],
  • "variants":
    [
    ],
  • "metaFields":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete product

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

Responses

204

Delete product

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/products/{productId}
GetResponse
/shops/{shopId}/products/{productId}
GetResponse MAX US
/shops/{shopId}/products/{productId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Upsert product categories

This method makes it possible to assign product categories, and to set a default product category. This method doesn't remove or unassign product categories. It returns a list of product categories.

Please note that if you assign only one category to a given product, that category is marked as default. If you try to remove the default mark, your change won't be executed.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

Request Body schema: application/json
categories
required
Array of object (UpsertSingleProductCategory)

Responses

200

The list of product categories

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products/{productId}/categories
GetResponse
/shops/{shopId}/products/{productId}/categories
GetResponse MAX US
/shops/{shopId}/products/{productId}/categories
GetResponse MAX PL
/shops/{shopId}/products/{productId}/categories

Request samples

application/json
Copy
Expand all Collapse all
{
  • "categories":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
[]

Upsert product meta fields

This method makes it possible to assign meta fields. It doesn't remove or unassign meta fields. It returns a list of product meta fields.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

Request Body schema: application/json
metaFields
required
Array of object (UpsertSingleMetaField)

Responses

200

The list of meta fields

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products/{productId}/meta-fields
GetResponse
/shops/{shopId}/products/{productId}/meta-fields
GetResponse MAX US
/shops/{shopId}/products/{productId}/meta-fields
GetResponse MAX PL
/shops/{shopId}/products/{productId}/meta-fields

Request samples

application/json
Copy
Expand all Collapse all
{
  • "metaFields":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
[]

Product Variants

Get a list of product variants

Sending a GET request to this URL returns a collection of product variant resources that belong to the given shop and product.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • name
  • sku
  • description

The description fields can be a pattern and we'll try to match this phrase.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

query Parameters
query[name]
string

Search variant by name

query[sku]
string

Search variant by SKU

query[description]
string

Search variant by description

query[externalId]
string

Search variant by external ID

query[createdAt][from]
string <date-time>

Show variants starting from this date

query[createdAt][to]
string <date-time>

Show variants starting to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of product variants

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/products/{productId}/variants
GetResponse
/shops/{shopId}/products/{productId}/variants
GetResponse MAX US
/shops/{shopId}/products/{productId}/variants
GetResponse MAX PL
/shops/{shopId}/products/{productId}/variants

Response samples

application/json
Copy
Expand all Collapse all
[]

Create product variant

Sending a POST request to this URL will create a new product variant resource.

In order to create a new product variant, you need to send a product variant resource in the body of the request (remember that you need to serialize the body into a JSON string)

There is no need to create every element (like: image, meta field, tax) one by one by their own endpoints. All these elements can be created during this method.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

Request Body schema: application/json
name
required
string [ 1 .. 255 ] characters

The product name

url
string <uri> <= 2048 characters

The external URL to the product variant

sku
required
string [ 2 .. 255 ] characters

The stock-keeping unit of a variant. Must be unique within the product

price
required
number <double>

The price

priceTax
required
number <double>

The price including tax

previousPrice
number <double> Nullable

The price before the change

previousPriceTax
number <double> Nullable

The price before the change including tax

quantity
integer <int64>
Default: 1

The quantity of variant items

position
integer <int64>

The position of a variant

barcode
string [ 2 .. 255 ] characters

The barcode of a variant

externalId
string <= 255 characters

The external ID is the identifying string or number of the variant given by another software

description
string [ 2 .. 1000 ] characters

The description of a variant

images
Array of object (NewProductVariantImage)
metaFields
Array of object (NewMetaField)
taxes
Array of object (NewTax)

Responses

201

The product variant details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products/{productId}/variants
GetResponse
/shops/{shopId}/products/{productId}/variants
GetResponse MAX US
/shops/{shopId}/products/{productId}/variants
GetResponse MAX PL
/shops/{shopId}/products/{productId}/variants

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Red Monster Cap",
  • "sku": "SKU-1254-56-457-5689",
  • "price": 20,
  • "priceTax": 27.5,
  • "previousPrice": 25,
  • "previousPriceTax": 33.6,
  • "quantity": 1,
  • "position": 1,
  • "barcode": "12455687",
  • "externalId": "ext1456",
  • "description": "Red Cap with GetResponse Monster print",
  • "images":
    [],
  • "metaFields":
    [
    ],
  • "taxes":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a single product variant by ID

This method returns product variant according to the given variantId in the context of a given shopId and productId

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

variantId
required
string
Example: "VTB"

The variant ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The product variant details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX US
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}/variants/{variantId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update product variant

Update properties of a product variant. You should send only those fields that need to be changed. The remaining properties will stay the same. However, when updating metafields, images, and taxes, you need to send entire collections. Individual fields can't be updated. If you want to update particular metafields or tax resources, you can do so using their particular endpoints, i.e:

  • taxes - POST /v3/shops/{shopId}/taxes/{taxId}
  • metaFields - POST /v3/shops/{shopId}/meta-fields/{metaFieldId}
Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

variantId
required
string
Example: "VTB"

The variant ID

Request Body schema: application/json
name
string [ 1 .. 255 ] characters

The product name

url
string <uri> <= 2048 characters

The external URL to the product variant

sku
string [ 2 .. 255 ] characters

The stock-keeping unit of a variant. Must be unique within the product

price
number <double>

The price

priceTax
number <double>

The price including tax

previousPrice
number <double> Nullable

The price before the change

previousPriceTax
number <double> Nullable

The price before the change including tax

quantity
integer <int64>
Default: 1

The quantity of variant items

position
integer <int64>

The position of a variant

barcode
string [ 2 .. 255 ] characters

The barcode of a variant

externalId
string <= 255 characters

The external ID is the identifying string or number of the variant given by another software

description
string [ 2 .. 1000 ] characters

The description of a variant

images
Array of object (NewProductVariantImage)
metaFields
Array of object (NewMetaField)
taxes
Array of object (NewTax)

Responses

200

The product variant details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX US
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}/variants/{variantId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Red Monster Cap",
  • "sku": "SKU-1254-56-457-5689",
  • "price": 20,
  • "priceTax": 27.5,
  • "previousPrice": 25,
  • "previousPriceTax": 33.6,
  • "quantity": 1,
  • "position": 1,
  • "barcode": "12455687",
  • "externalId": "ext1456",
  • "description": "Red Cap with GetResponse Monster print",
  • "images":
    [],
  • "metaFields":
    [
    ],
  • "taxes":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete product variant

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

productId
required
string
Example: "9I"

The product ID

variantId
required
string
Example: "VTB"

The variant ID

Responses

204

Delete product variant

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX US
/shops/{shopId}/products/{productId}/variants/{variantId}
GetResponse MAX PL
/shops/{shopId}/products/{productId}/variants/{variantId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Shops

Get a single shop by ID

This method returns the shop according to the given shopId

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The shop details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}
GetResponse
/shops/{shopId}
GetResponse MAX US
/shops/{shopId}
GetResponse MAX PL
/shops/{shopId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "shopId": "pf3",
  • "name": "Monster market",
  • "locale": "PL",
  • "currency": "PLN",
  • "productCount": "10",
  • "productRevenue": "1.23",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Update shop

This makes it possible to update shop preferences. You should send only those fields that need to be changed. The rest of the properties remain the same.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
name
string [ 4 .. 124 ] characters

The shop name

locale
string

The language locale (ISO 639-1)

currency
string

The currency code (ISO 4217)

Responses

200

The shop details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /shops/{shopId}
GetResponse
/shops/{shopId}
GetResponse MAX US
/shops/{shopId}
GetResponse MAX PL
/shops/{shopId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Monster market",
  • "locale": "PL",
  • "currency": "PLN"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "shopId": "pf3",
  • "name": "Monster market",
  • "locale": "PL",
  • "currency": "PLN",
  • "productCount": "10",
  • "productRevenue": "1.23",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Delete shop

This method deletes a shop.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Responses

204

Delete a shop

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}
GetResponse
/shops/{shopId}
GetResponse MAX US
/shops/{shopId}
GetResponse MAX PL
/shops/{shopId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get a list of shops

Sending a GET request to this URL returns a collection of shop resources.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below in the request params section). You can basically search by:

  • name

The name fields can be a pattern and we'll try to match this phrase.

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search shop by name

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of shops

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /shops
GetResponse
/shops
GetResponse MAX US
/shops
GetResponse MAX PL
/shops

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create shop

This method makes it possible to create a new shop.

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 4 .. 124 ] characters

The shop name

locale
required
string

The language locale (ISO 639-1)

currency
required
string

The currency code (ISO 4217)

Responses

201

The shop details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /shops
GetResponse
/shops
GetResponse MAX US
/shops
GetResponse MAX PL
/shops

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "Monster market",
  • "locale": "PL",
  • "currency": "PLN"
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "shopId": "pf3",
  • "name": "Monster market",
  • "locale": "PL",
  • "currency": "PLN",
  • "productCount": "10",
  • "productRevenue": "1.23",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00"
}

Taxes

Get a list of taxes

Sending GET request to this URL returns a collection of tax resources that belong to the given shop.

You can narrow down the list of resources by passing proper query parameters (the list of which you can find below, in the request params section). You can basically search by:

  • name
  • createdOn 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.
Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

query Parameters
query[name]
string

Search tax by name

query[createdOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search tax created from this date

query[createdOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search tax created to this date

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of taxes

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /shops/{shopId}/taxes
GetResponse
/shops/{shopId}/taxes
GetResponse MAX US
/shops/{shopId}/taxes
GetResponse MAX PL
/shops/{shopId}/taxes

Response samples

application/json
Copy
Expand all Collapse all
[]

Create tax

Sending a POST request to this URL will create a new tax resource.

In order to create a new tax, you need to send a tax resource in the body of the request (remember that you need to serialize the body into a JSON string)

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

Request Body schema: application/json
name
required
string [ 2 .. 255 ] characters

The tax name

rate
required
number <double> [ 0 .. 99.9 ]

The rate value

Responses

201

The tax details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /shops/{shopId}/taxes
GetResponse
/shops/{shopId}/taxes
GetResponse MAX US
/shops/{shopId}/taxes
GetResponse MAX PL
/shops/{shopId}/taxes

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "VAT",
  • "rate": 23
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a single tax by ID

This method returns tax with a given taxId in the context of a given shopId

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

taxId
required
string
Example: "Sk"

The tax ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The tax details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /shops/{shopId}/taxes/{taxId}
GetResponse
/shops/{shopId}/taxes/{taxId}
GetResponse MAX US
/shops/{shopId}/taxes/{taxId}
GetResponse MAX PL
/shops/{shopId}/taxes/{taxId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Update tax

Update the properties of the shop tax. You should only send the fields that need to be changed. The rest of the properties will stay the same.

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

taxId
required
string
Example: "Sk"

The tax ID

Request Body schema: application/json
name
string [ 2 .. 255 ] characters

The tax name

rate
number <double> [ 0 .. 99.9 ]

The rate value

Responses

200

The tax details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /shops/{shopId}/taxes/{taxId}
GetResponse
/shops/{shopId}/taxes/{taxId}
GetResponse MAX US
/shops/{shopId}/taxes/{taxId}
GetResponse MAX PL
/shops/{shopId}/taxes/{taxId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "VAT",
  • "rate": 23
}

Response samples

application/json
Copy
Expand all Collapse all
{}

Delete tax by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
shopId
required
string
Example: "pf3"

The shop ID

taxId
required
string
Example: "Sk"

The tax ID

Responses

204

Delete tax

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /shops/{shopId}/taxes/{taxId}
GetResponse
/shops/{shopId}/taxes/{taxId}
GetResponse MAX US
/shops/{shopId}/taxes/{taxId}
GetResponse MAX PL
/shops/{shopId}/taxes/{taxId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Transactional Emails

Get transactional email details by transactional email ID GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
path Parameters
transactionalEmailId
required
string
Example: "tRe4i"
query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Transactional email details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /transactional-emails/{transactionalEmailId}
GetResponse
/transactional-emails/{transactionalEmailId}
GetResponse MAX US
/transactional-emails/{transactionalEmailId}
GetResponse MAX PL
/transactional-emails/{transactionalEmailId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "fromField":
    {},
  • "replyTo":
    {},
  • "subject": "Order Confirmation - Example Shop",
  • "tag":
    {
    },
  • "recipients":
    {
    },
  • "transactionalEmailId": "tRe4i"
}

Get the list of transactional emails GetResponse MAXAdd-on required

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[sentOn][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search transactional emails sent from this date

query[sentOn][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Search transactional emails sent to this date

query[tagged]
string (StringBooleanEnum)
Enum:"true" "false"

Search tagged/untagged transactional emails

query[tagId]
string

Search transactional emails with a specific tag ID

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of transactional emails

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /transactional-emails
GetResponse
/transactional-emails
GetResponse MAX US
/transactional-emails
GetResponse MAX PL
/transactional-emails

Response samples

application/json
Copy
Expand all Collapse all
[]

Send transactional email GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
fromField
required
object (FromFieldReference)

The 'From' address ID to be used as the message sender

replyTo
object (FromFieldReference)

The 'From' address ID to be used as the Reply-to

tag
object (NewTransactionalEmailTag)

The tag ID used for statistical data collection

recipients
required
object (TransactionalEmailRecipients)
contentType
required
string
Default: "direct"

The message content type

subject
required
string [ 1 .. 512 ] characters
attachments
Array of object (TransactionalEmailAttachment)
content
required
object

The message content. At least one field is required. The maximum combined size of plain text and HTML is 16MB

Responses

201

Transactional email.

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /transactional-emails
GetResponse
/transactional-emails
GetResponse MAX US
/transactional-emails
GetResponse MAX PL
/transactional-emails

Request samples

application/json
Copy
Expand all Collapse all
{
  • "fromField":
    {
    },
  • "replyTo":
    {
    },
  • "tag":
    {
    },
  • "recipients":
    {
    },
  • "contentType": "direct",
  • "subject": "Order Confirmation - Example Shop",
  • "attachments":
    [
    ],
  • "content":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "transactionalEmailId": "tRe4i"
}

Get the overall statistics of transactional emails GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
query Parameters
query[groupBy]
required
string
Enum:"total" "day"

Group results by time interval

query[timeFrame][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data from this date

query[timeFrame][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Count data to this date

query[tagged]
string (StringBooleanEnum)
Enum:"true" "false"

Search tagged/untagged transactional emails

query[tagId]
string

Search transactional emails with a specific tag ID

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The overall statistics of transactional emails

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /transactional-emails/statistics
GetResponse
/transactional-emails/statistics
GetResponse MAX US
/transactional-emails/statistics
GetResponse MAX PL
/transactional-emails/statistics

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Transactional Emails Templates

Get a single template by ID GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
path Parameters
transactionalEmailTemplateId
required
string
Example: "abc"

Transactional emails template identifier

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Transactional emails template details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX US
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX PL
/transactional-emails/templates/{transactionalEmailTemplateId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "templateId": "p",
  • "subject": "Order Confirmation Template",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00",
  • "editor": "html",
  • "content":
    {
    }
}

Update transactional email template GetResponse MAXAdd-on required

This method allows you to update transactional email template

Authorizations:
api-keyoauth2 (all)
path Parameters
transactionalEmailTemplateId
required
string
Example: "abc"

Transactional emails template identifier

Request Body schema: application/json
subject
string

The template subject

content
object (TransactionalEmailTemplateContent)

The template content. At least one field is required

Responses

200

Transactional emails template details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX US
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX PL
/transactional-emails/templates/{transactionalEmailTemplateId}

Request samples

application/json
Copy
Expand all Collapse all
{
  • "subject": "Order Confirmation - Example Shop",
  • "content":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "templateId": "p",
  • "subject": "Order Confirmation Template",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00",
  • "editor": "html",
  • "content":
    {
    }
}

Delete transactional email template GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
path Parameters
transactionalEmailTemplateId
required
string
Example: "abc"

Transactional emails template identifier

Responses

204

Delete transactional email template

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

delete /transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX US
/transactional-emails/templates/{transactionalEmailTemplateId}
GetResponse MAX PL
/transactional-emails/templates/{transactionalEmailTemplateId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "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",
  • "context":
    {
    },
  • "uuid": "77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa"
}

Get the list of transactional email templates GetResponse MAXAdd-on required

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[subject]
string

Search templates by subject

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by creation date

sort[subject]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by template subject

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

Transactional email templates listing

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /transactional-emails/templates
GetResponse
/transactional-emails/templates
GetResponse MAX US
/transactional-emails/templates
GetResponse MAX PL
/transactional-emails/templates

Response samples

application/json
Copy
Expand all Collapse all
[]

Create transactional email template GetResponse MAXAdd-on required

This method creates a new transactional email template

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
subject
required
string

The template subject

content
object (TransactionalEmailTemplateContent)

The template content. At least one field is required

Responses

201

Transactional emails template details

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

post /transactional-emails/templates
GetResponse
/transactional-emails/templates
GetResponse MAX US
/transactional-emails/templates
GetResponse MAX PL
/transactional-emails/templates

Request samples

application/json
Copy
Expand all Collapse all
{
  • "subject": "Order Confirmation - Example Shop",
  • "content":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "templateId": "p",
  • "subject": "Order Confirmation Template",
  • "createdOn": "2025-02-04T14:41:25+00:00",
  • "updatedOn": "2025-02-04T14:41:25+00:00",
  • "editor": "html",
  • "content":
    {
    }
}

SMS Messages

Get a single SMS message by its ID GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
path Parameters
smsId
required
string
Example: "N"

The SMS message ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The SMS message details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /sms/{smsId}
GetResponse
/sms/{smsId}
GetResponse MAX US
/sms/{smsId}
GetResponse MAX PL
/sms/{smsId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "sendSettings":
    {
    },
  • "clickTracks":
    [],
  • "smsId": "N",
  • "name": "New message",
  • "campaign":
    {},
  • "modifiedOn": "2025-02-04T14:41:25+00:00",
  • "type": "sms",
  • "sendOn":
    {
    },
  • "recipientsType": "contacts",
  • "senderName": "string",
  • "content": "This is my SMS content",
  • "sendMetrics":
    {
    },
  • "statistics":
    {
    }
}

Get the list of SMS messages. GetResponse MAXAdd-on required

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[type]
string
Enum:"sms" "draft"

Search SMS messages by type

query[name]
string

Search SMS messages by name

query[sendingStatus]
string
Enum:"scheduled" "sending" "sent"

Search SMS messages by status

query[campaignId]
string

Search SMS messages by campaign (list) ID

query[hasLinks]
boolean

Search for SMS messages with links

sort[sendingStatus]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by sending status

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by name

sort[sendOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by sending date

sort[modifiedOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by modification date

sort[delivered]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of delivered messages

sort[sent]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of sent messages

sort[clicks]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of link clicks

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The SMS message listing

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /sms
GetResponse
/sms
GetResponse MAX US
/sms
GetResponse MAX PL
/sms

Response samples

application/json
Copy
Expand all Collapse all
{
  • "smsId": "N",
  • "name": "New message",
  • "campaign":
    {},
  • "modifiedOn": "2025-02-04T14:41:25+00:00",
  • "type": "sms",
  • "sendOn":
    {
    },
  • "recipientsType": "contacts",
  • "senderName": "string",
  • "content": "This is my SMS content",
  • "sendMetrics":
    {
    },
  • "statistics":
    {
    }
}

SMS Automation Messages

Get the list of automated SMS messages. GetResponse MAXAdd-on required

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search automated SMS messages by name

query[campaignId]
string

Search automated SMS messages by campaign (list) ID

query[hasLinks]
boolean

Search for automated SMS messages containing links

sort[status]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the status of the SMS message

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the name of the automated SMS message

sort[modifiedOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the date the SMS message was modified on

sort[delivered]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the number of delivered SMS messages

sort[sent]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the number of sent SMS messages

sort[clicks]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by the number of link clicks

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of the automated SMS messages

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /sms-automation
GetResponse
/sms-automation
GetResponse MAX US
/sms-automation
GetResponse MAX PL
/sms-automation

Response samples

application/json
Copy
Expand all Collapse all
{}

Ecommerce

Get the ecommerce revenue statistics

Authorizations:
api-keyoauth2 (all)
query Parameters
query[orderDate][from]
string <date>

Show statistics for orders from this date

query[orderDate][to]
string <date>

Show statistics for orders to this date

query[shopId]
string

Search statistics by shop ID. You can get the shop ID by calling the /v3/shops endpoint. You can search for multiple shops using comma-separated values, for example, pgIH, CNXF

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Revenue statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/ecommerce/revenue
GetResponse
/statistics/ecommerce/revenue
GetResponse MAX US
/statistics/ecommerce/revenue
GetResponse MAX PL
/statistics/ecommerce/revenue

Response samples

application/json
Copy
Expand all Collapse all
{
  • "currency": "USD",
  • "timeSeries":
    [
    ]
}

Get the ecommerce general performance statistics

Authorizations:
api-keyoauth2 (all)
query Parameters
query[orderDate][from]
string <date>

Show statistics for orders from this date

query[orderDate][to]
string <date>

Show statistics for orders to this date

query[shopId]
string

Search statistics by shop ID. You can get the shop ID by calling the /v3/shops endpoint. You can search for multiple shops using comma-separated values, for example, pgIH, CNXF

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

General performance statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/ecommerce/performance
GetResponse
/statistics/ecommerce/performance
GetResponse MAX US
/statistics/ecommerce/performance
GetResponse MAX PL
/statistics/ecommerce/performance

Response samples

application/json
Copy
Expand all Collapse all
{
  • "currency": "USD",
  • "order":
    {
    },
  • "revenue":
    {
    }
}

Sms

Get details for the SMS message statistics GetResponse MAXAdd-on required

Authorizations:
api-keyoauth2 (all)
path Parameters
smsId
required
string
Example: "N"

The SMS message ID

query Parameters
query[createdOn][from]
string <date>
Example: "2023-01-20"

Get statistics for a single SMS from this date

query[createdOn][to]
string <date>
Example: "2023-01-20"

Get statistics for a single SMS to this date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

SMS statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/sms/{smsId}
GetResponse
/statistics/sms/{smsId}
GetResponse MAX US
/statistics/sms/{smsId}
GetResponse MAX PL
/statistics/sms/{smsId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "smsId": "PvLI8C",
  • "totalSms": 1,
  • "totalRecipients": 1,
  • "totalClicks": 1,
  • "totalUniqueClicks": 1,
  • "totalUnsubscribes": 1,
  • "totalDelivered": 1,
  • "totalPrice":
    {
    },
  • "link":
    {},
  • "countryStatistics":
    {
    }
}

Website

Get details for website statistics

Authorizations:
api-keyoauth2 (all)
path Parameters
websiteId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The website ID

query Parameters
query[date][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show a single website statistics from this date

query[date][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show a single website statistics to this date

query[location]
string

Website statistics by location

query[device]
string
Enum:"desktop" "mobile"

Website statistics by device

query[page]
string

Website statistics by a page UUID

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Website statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/wbe/{websiteId}/performance
GetResponse
/statistics/wbe/{websiteId}/performance
GetResponse MAX US
/statistics/wbe/{websiteId}/performance
GetResponse MAX PL
/statistics/wbe/{websiteId}/performance

Response samples

application/json
Copy
Expand all Collapse all
{}

Landing Page

Get details for landing page statistics

Authorizations:
api-keyoauth2 (all)
path Parameters
lpsId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The landing page ID

query Parameters
query[date][from]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show a single landing page statistics from this date

query[date][to]
string <date> or string <date-time> (DateOrDateTime)
Example: "2018-04-15" "2018-01-15T13:30:42+0000"

Show a single landing page statistics to this date

query[location]
string

Landing page statistics by location

query[device]
string
Enum:"desktop" "mobile"

Landing page statistics by device

query[page]
string

Landing page statistics by page UUID

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Landing page statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/lps/{lpsId}/performance
GetResponse
/statistics/lps/{lpsId}/performance
GetResponse MAX US
/statistics/lps/{lpsId}/performance
GetResponse MAX PL
/statistics/lps/{lpsId}/performance

Response samples

application/json
Copy
Expand all Collapse all
{}

Form and Popup

Get statistics for a single form or popup

Authorizations:
api-keyoauth2 (all)
path Parameters
popupId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The form or popup ID

query Parameters
query[date][from]
string <date>
Example: "2023-01-10"

Get statistics for a single form or popup from this date

query[date][to]
string <date>
Example: "2023-01-20"

Get statistics for a single form or popup to this date

query[location]
string

Form or popup statistics by location

query[device]
string
Enum:"desktop" "mobile"

Form or popup statistics by device

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Form or popup statistics

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /statistics/popups/{popupId}/performance
GetResponse
/statistics/popups/{popupId}/performance
GetResponse MAX US
/statistics/popups/{popupId}/performance
GetResponse MAX PL
/statistics/popups/{popupId}/performance

Response samples

application/json
Copy
Expand all Collapse all
{
  • "popupId": "7189c47e-e45f-4c45-a882-08649c48ff96",
  • "views": 9,
  • "clicks": 2,
  • "ctr": 5,
  • "leads": 2
}

Webinars

Get a webinar by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
webinarId
required
string
Example: "yK6d"

The webinar ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The webinar details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /webinars/{webinarId}
GetResponse
/webinars/{webinarId}
GetResponse MAX US
/webinars/{webinarId}
GetResponse MAX PL
/webinars/{webinarId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get a list of webinars

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search webinars by name

query[campaignId]
string

The list of campaign resource IDs (string separated with ',')

query[status]
string
Enum:"upcoming" "finished" "published" "unpublished"

Search webinars by status

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort webinars by name

sort[createdOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort webinars by creation date

sort[startsOn]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort webinars by update date

query[type]
string
Enum:"all" "live" "on_demand"

Search webinars by type

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of webinars

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /webinars
GetResponse
/webinars
GetResponse MAX US
/webinars
GetResponse MAX PL
/webinars

Response samples

application/json
Copy
Expand all Collapse all
[]

Websites

Get a single Website by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
websiteId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The website ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The website details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /websites/{websiteId}
GetResponse
/websites/{websiteId}
GetResponse MAX US
/websites/{websiteId}
GetResponse MAX PL
/websites/{websiteId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get the list of websites

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search websites by name

query[status]
string
Enum:"published" "unpublished"

Search websites by status

stats[from]
string <date-time>

Show statistics for websites from this date

stats[to]
string <date-time>

Show statistics for websites to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort websites by name

sort[createdAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort websites by creation date

sort[updatedAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort websites by modification date

sort[pageViews]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort websites by page views

sort[visits]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of site visits

sort[uniqueVisitors]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of unique visitors

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of tags

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /websites
GetResponse
/websites
GetResponse MAX US
/websites
GetResponse MAX PL
/websites

Response samples

application/json
Copy
Expand all Collapse all
[]

Landing Pages

Get a single landing page by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
lpsId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The landing page ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The landing page details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /lps/{lpsId}
GetResponse
/lps/{lpsId}
GetResponse MAX US
/lps/{lpsId}
GetResponse MAX PL
/lps/{lpsId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get the list of landing pages

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search landing pages by name

query[status]
string
Enum:"published" "unpublished"

Search landing pages by status

stats[from]
string <date-time>

Show statistics for landing pages from this date

stats[to]
string <date-time>

Show statistics for landing pages to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort landing pages by name

sort[createdAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort landing pages by creation date

sort[updatedAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort landing pages by modification date

sort[visits]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of page visits

sort[leads]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort landing pages by number of leads

sort[subscriptionRate]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by subscription rate

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of tags

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /lps
GetResponse
/lps
GetResponse MAX US
/lps
GetResponse MAX PL
/lps

Response samples

application/json
Copy
Expand all Collapse all
[]

Forms and Popups

Get a single form or popup by ID

Authorizations:
api-keyoauth2 (all)
path Parameters
popupId
required
string
Example: "ce84fabc-1349-4992-a2d7-0c44c5534128"

The form or popup ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

Form or popup details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /popups/{popupId}
GetResponse
/popups/{popupId}
GetResponse MAX US
/popups/{popupId}
GetResponse MAX PL
/popups/{popupId}

Response samples

application/json
Copy
Expand all Collapse all
{}

Get the list of forms and popups

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search forms and popups by name

query[status]
string
Enum:"published" "unpublished"

Search forms and popups by status

stats[from]
string <date-time>

Show statistics from this date

stats[to]
string <date-time>

Show statistics to this date

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort forms and popups by name

sort[status]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort forms and popups by status

sort[createdAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort forms and popups by creation date

sort[updatedAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort forms and popups by modification date

sort[views]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of views

sort[uniqueVisitors]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of unique visitors

sort[leads]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by number of leads

sort[ctr]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort by CTR (click-through rate)

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of forms and popups

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /popups
GetResponse
/popups
GetResponse MAX US
/popups
GetResponse MAX PL
/popups

Response samples

application/json
Copy
Expand all Collapse all
[]

Custom Reports

Get a single custom report by ID

The endpoint allows retrieving detailed information about a custom report based on the provided customReportId. It returns report data, including:

  • details about the report,
  • generation statuses of the report files,
  • URLs from which the report files can be downloaded.

More information on using custom reports can be found in the Case Study section of the API documentation.

Authorizations:
api-keyoauth2 (all)
path Parameters
customReportId
required
string

The custom report ID

query Parameters
fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

Responses

200

The custom report details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

get /custom-reports/{customReportId}
GetResponse
/custom-reports/{customReportId}
GetResponse MAX US
/custom-reports/{customReportId}
GetResponse MAX PL
/custom-reports/{customReportId}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "customReportId": "cRi",
  • "name": "Example Report",
  • "type": "subscription_rejections",
  • "scheduling":
    {
    },
  • "filters": [ ],
  • "files":
    [
    ],
  • "createdAt": "2024-01-02T15:00:00+0000",
  • "generatedAt": "2024-01-02T17:00:00+0000"
}

Get a list of custom reports

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.

Authorizations:
api-keyoauth2 (all)
query Parameters
query[name]
string

Search custom reports by name

sort[name]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort custom reports by name

sort[frequency]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort custom reports by frequency

sort[generatedAt]
string (SortOrderEnum)
Enum:"ASC" "DESC"

Sort custom reports by generation date

fields
string

List of fields that should be returned. Id is always returned. Fields should be separated by comma

perPage
integer <int32> [ 1 .. 1000 ]
Default: 100

Requested number of results per page

page
integer <int32> >= 1
Default: 1

Page number

Responses

200

The list of custom reports

400

Request validation error

401

Authentication error

429

The throttling limit has been reached

get /custom-reports
GetResponse
/custom-reports
GetResponse MAX US
/custom-reports
GetResponse MAX PL
/custom-reports

Response samples

application/json
Copy
Expand all Collapse all
[]

Create the custom report GetResponse MAX

The endpoint allows scheduling a custom report of a specific type for a given time period. Depending on the report type, you can also narrow down the data using appropriate filters.

More information about using the endpoint, along with examples, can be found in the Case Study section of the API documentation.

Authorizations:
api-keyoauth2 (all)
Request Body schema: application/json
name
required
string [ 3 .. 70 ] characters

The custom report name

type
required
string

The custom report type

scheduling
required
object

Parameters responsible for defining the reporting period

Responses

201

The custom report details

400

Request validation error

401

Authentication error

404

Resource not found

429

The throttling limit has been reached

post /custom-reports
GetResponse
/custom-reports
GetResponse MAX US
/custom-reports
GetResponse MAX PL
/custom-reports

Request samples

application/json
Copy
Expand all Collapse all
{
  • "name": "My new custom report",
  • "type": "bounces",
  • "scheduling":
    {
    }
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "customReportId": "cRi",
  • "name": "Example Report",
  • "type": "subscription_rejections",
  • "scheduling":
    {
    },
  • "filters": [ ],
  • "files":
    [
    ],
  • "createdAt": "2024-01-02T15:00:00+0000",
  • "generatedAt": "2024-01-02T17:00:00+0000"
}