GetResponse Imports API

Imports API documentation

Operations 3

GET /imports/{importId} Get import details by ID #
GET /imports Get a list of imports #
POST /imports Schedule a new contact import #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

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

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

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

getresponse-imports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: GetResponse APIv3 Imports API
  description: '# Limits and throttling


    GetResponse API calls are subject to throttling to ensure a high level of service for all users.'
  contact:
    name: API Support - DevZone
    url: https://app.getresponse.com/feedback.html?devzone=yes
    email: getresponse-devzone@cs.getresponse.com
  version: 3.2026-07-28T07:58:55+00:00
  x-logo:
    url: https://us-ws.gr-cdn.com/images/global/getresponse.png
servers:
- url: https://api.getresponse.com/v3
  description: GetResponse
- url: https://api3.getresponse360.com/v3
  description: GetResponse MAX US
- url: https://api3.getresponse360.pl/v3
  description: GetResponse MAX PL
tags:
- name: Imports
  description: Imports API documentation
paths:
  /imports/{importId}:
    parameters:
    - $ref: '#/components/parameters/importId'
    get:
      tags:
      - Imports
      summary: Get import details by ID
      operationId: getImportById
      parameters:
      - $ref: '#/components/parameters/Fields'
      responses:
        '200':
          $ref: '#/components/responses/ImportDetails'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 404
                    code: 1013
                    codeDescription: The requested resource was not found
                    message: Resource not found
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1013
                    context:
                      contactId: pVyRW
                    uuid: 87b90a96-5ee5-4ca4-8180-ac00adcf62c7
        '400':
          description: Request validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 400
                    code: 1000
                    codeDescription: General error of validation process, more details should be in context section
                    message: Validation error, see context section for more information
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
                    context:
                      validationType: searchFilter[query]
                      fieldName: name
                      originalName: lorem-ipsum
                      errorDescription: Not allowed search field
                    uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 401
                    code: 1014
                    codeDescription: Problem during authentication process, check headers!
                    message: Unable to authenticate request. Check credentials or authentication method details
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
                    context:
                      authenticationType: auth_token
                    uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
        '429':
          description: The throttling limit has been reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 429
                    code: 1015
                    codeDescription: Too many request to API, quota reached, please wait till next quota window
                    message: You have reached your requests limit for this time window, please wait...
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
                    context:
                      currentLimit: 30000
                      timeToReset: 100 seconds
                    uuid: 510c6726-7f65-46b7-a798-ca403133924f
      security:
      - api-key: []
      - oauth2:
        - all
  /imports:
    get:
      tags:
      - Imports
      summary: Get a list of imports
      description: You can filter the resource using criteria specified as `query[*]`. You can provide multiple criteria, to use AND logic. You can sort the resource using parameters specified as `sort[*]`. You can specify multiple fields to sort by.
      operationId: getImportList
      parameters:
      - name: query[campaignId]
        in: query
        description: Search imports by campaignId
        required: false
        schema:
          type: string
      - name: query[createdOn][from]
        in: query
        description: Search imports created from this date
        required: false
        schema:
          $ref: '#/components/schemas/DateOrDateTime'
      - name: query[createdOn][to]
        in: query
        description: Search imports created to this date
        required: false
        schema:
          $ref: '#/components/schemas/DateOrDateTime'
      - name: sort[createdOn]
        in: query
        description: Sort imports by creation date
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[finishedOn]
        in: query
        description: Sort imports by finish date
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[campaignName]
        in: query
        description: Sort imports by campaign name
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[uploadedContacts]
        in: query
        description: Sort imports by uploaded contact count
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[updatedContacts]
        in: query
        description: Sort imports by updated contact count
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[addedContacts]
        in: query
        description: Sort imports by inserted contact count
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[invalidContacts]
        in: query
        description: Sort imports by invalid contact count
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - name: sort[status]
        in: query
        description: Sort imports by status (uploaded, to_review, approved, finished, rejected, canceled)
        required: false
        schema:
          $ref: '#/components/schemas/SortOrderEnum'
      - $ref: '#/components/parameters/Fields'
      - $ref: '#/components/parameters/PerPage'
      - $ref: '#/components/parameters/Page'
      responses:
        '200':
          $ref: '#/components/responses/ImportList'
        '400':
          description: Request validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 400
                    code: 1000
                    codeDescription: General error of validation process, more details should be in context section
                    message: Validation error, see context section for more information
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
                    context:
                      validationType: searchFilter[query]
                      fieldName: name
                      originalName: lorem-ipsum
                      errorDescription: Not allowed search field
                    uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 401
                    code: 1014
                    codeDescription: Problem during authentication process, check headers!
                    message: Unable to authenticate request. Check credentials or authentication method details
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
                    context:
                      authenticationType: auth_token
                    uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
        '429':
          description: The throttling limit has been reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 429
                    code: 1015
                    codeDescription: Too many request to API, quota reached, please wait till next quota window
                    message: You have reached your requests limit for this time window, please wait...
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
                    context:
                      currentLimit: 30000
                      timeToReset: 100 seconds
                    uuid: 510c6726-7f65-46b7-a798-ca403133924f
      security:
      - api-key: []
      - oauth2:
        - all
    post:
      tags:
      - Imports
      summary: Schedule a new contact import
      description: 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
      operationId: createImport
      requestBody:
        $ref: '#/components/requestBodies/NewImport'
      responses:
        '201':
          $ref: '#/components/responses/ImportDetails'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 409
                    code: 1008
                    codeDescription: There is another resource with the same value of unique property
                    message: Property value is already taken
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1008
                    context:
                      value: test-value
                    uuid: b89a0d53-67f6-4269-b207-223b42b6bfbd
        '400':
          description: Request validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 400
                    code: 1000
                    codeDescription: General error of validation process, more details should be in context section
                    message: Validation error, see context section for more information
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1000
                    context:
                      validationType: searchFilter[query]
                      fieldName: name
                      originalName: lorem-ipsum
                      errorDescription: Not allowed search field
                    uuid: 77dabfd1-1fa7-4f9f-8d3f-487b4403e3aa
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 401
                    code: 1014
                    codeDescription: Problem during authentication process, check headers!
                    message: Unable to authenticate request. Check credentials or authentication method details
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1014
                    context:
                      authenticationType: auth_token
                    uuid: 62417847-4f12-4c25-9b3a-0b619a187efe
        '429':
          description: The throttling limit has been reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                example:
                  value:
                    httpStatus: 429
                    code: 1015
                    codeDescription: Too many request to API, quota reached, please wait till next quota window
                    message: You have reached your requests limit for this time window, please wait...
                    moreInfo: https://apidocs.getresponse.com/en/v3/errors/1015
                    context:
                      currentLimit: 30000
                      timeToReset: 100 seconds
                    uuid: 510c6726-7f65-46b7-a798-ca403133924f
      security:
      - api-key: []
      - oauth2:
        - all
components:
  headers:
    RateLimitLimit:
      description: The total number of requests available per time frame
      schema:
        type: integer
        format: int32
    RateLimitReset:
      description: Seconds left in the current time frame, e.g. "432 seconds"
      schema:
        type: string
    TotalPages:
      description: The total number of pages
      schema:
        type: integer
        format: int32
    RateLimitRemaining:
      description: The number of requests left in the current time frame
      schema:
        type: integer
        format: int32
    CurrentPage:
      description: The current page number
      schema:
        type: integer
        format: int32
    TotalCount:
      description: The total number of resources found for the specified conditions
      schema:
        type: integer
        format: int32
  schemas:
    NewImport:
      required:
      - campaignId
      - contacts
      - fieldMapping
      properties:
        campaignId:
          description: The ID of the destination campaign (list)
          type: string
          example: z5c
        fieldMapping:
          description: 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
          type: array
          items:
            type: string
            example: email
        contacts:
          description: Container for a contact definition. Include the values defined in the `fieldMapping` array
          type: array
          items:
            $ref: '#/components/schemas/NewImportContact'
      type: object
    ErrorResponse:
      required:
      - httpStatus
      - code
      - codeDescription
      - message
      - moreInfo
      - context
      - uuid
      properties:
        httpStatus:
          description: HTTP response code
          type: integer
          format: int32
        code:
          description: API error code
          type: integer
          format: int32
        codeDescription:
          description: API error code description
          type: string
        message:
          description: Error message
          type: string
        moreInfo:
          description: URL to error description in the API Docs
          type: string
        context:
          type: object
        uuid:
          description: UUID of the error response
          type: string
      type: object
    NewImportContact:
      type: array
      items:
        type: string
        example: example@somedomain.com
    ImportErrorStatistics:
      properties:
        syntaxErrors:
          description: The number of contacts with a syntax error
          type: integer
          format: int64
          readOnly: true
          example: 2
        alreadyInQueue:
          description: The number of contacts already in queue
          type: integer
          format: int64
          readOnly: true
          example: 1
        invalidDomains:
          description: The number of contacts with invalid domains
          type: integer
          format: int64
          readOnly: true
          example: 1
        blacklist:
          description: The number of blocked contacts
          type: integer
          format: int64
          readOnly: true
          example: 1
        policyFailures:
          description: The number of contacts rejected for policy reasons
          type: integer
          format: int64
          readOnly: true
          example: 1
        mismatchedCriteria:
          description: The number of contacts rejected because of mismatched criteria, [learn more](https://www.getresponse.com/help/managing-contacts/working-with-contact-lists/where-can-i-find-import-statistics.html#what-do-the-numbers-for-uploaded-approved-and-import-errors-mean)
          type: integer
          format: int64
          readOnly: true
          example: 1
      type: object
    SortOrderEnum:
      type: string
      enum:
      - ASC
      - DESC
    ImportStatistics:
      required:
      - uploaded
      - invalid
      - updated
      - addedToList
      properties:
        uploaded:
          description: The number of uploaded contacts
          type: integer
          format: int64
          readOnly: true
          example: 25
        invalid:
          description: The number of invalid contacts
          type: integer
          format: int64
          readOnly: true
          example: 5
        updated:
          description: The number of updated contacts
          type: integer
          format: int64
          readOnly: true
          example: 10
        addedToList:
          description: The number of added contacts
          type: integer
          format: int64
          readOnly: true
          example: 10
      type: object
    CampaignReference:
      required:
      - campaignId
      properties:
        campaignId:
          description: Campaign ID
          type: string
          example: C
        href:
          description: Direct hyperlink to a resource
          type: string
          format: uri
          readOnly: true
          example: https://api.getresponse.com/v3/campaigns/C
        name:
          description: The campaign name
          type:
          - string
          - 'null'
          readOnly: true
          example: Promo campaign
      type: object
    Import:
      properties:
        importId:
          description: The import ID
          type: string
          readOnly: true
          example: o6gE
        campaign:
          allOf:
          - $ref: '#/components/schemas/CampaignReference'
        status:
          type: string
          enum:
          - uploaded
          - review
          - approved
          - rejected
          - finished
          - canceled
          - to_review
          readOnly: true
        statistics:
          description: The import statistics
          allOf:
          - $ref: '#/components/schemas/ImportStatistics'
        errorStatistics:
          description: The detailed import error statistics
          allOf:
          - $ref: '#/components/schemas/ImportErrorStatistics'
        createdOn:
          type: string
          format: date-time
        finishedOn:
          type: string
          format: date-time
        href:
          description: Direct hyperlink to a resource
          type: string
          format: uri
          readOnly: true
          example: https://api.getresponse.com/v3/imports/o6gE
      type: object
    DateOrDateTime:
      oneOf:
      - type: string
        format: date
        example: '2018-04-15'
      - type: string
        format: date-time
        example: 2018-01-15T13:30:42+0000
  parameters:
    PerPage:
      name: perPage
      in: query
      description: Requested number of results per page
      required: false
      schema:
        type: integer
        format: int32
        default: 100
        maximum: 1000
        minimum: 1
    importId:
      name: importId
      in: path
      description: The import ID
      required: true
      schema:
        type: string
      example: o6gE
    Page:
      name: page
      in: query
      description: Page number
      required: false
      schema:
        type: integer
        format: int32
        default: 1
        minimum: 1
    Fields:
      name: fields
      in: query
      description: List of fields that should be returned. Id is always returned. Fields should be separated by comma
      required: false
      schema:
        type: string
  requestBodies:
    NewImport:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NewImport'
  responses:
    ImportDetails:
      description: The import details.
      headers:
        X-RateLimit-Limit:
          $ref: '#/components/headers/RateLimitLimit'
        X-RateLimit-Remaining:
          $ref: '#/components/headers/RateLimitRemaining'
        X-RateLimit-Reset:
          $ref: '#/components/headers/RateLimitReset'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Import'
    ImportList:
      description: The list of imports.
      headers:
        X-RateLimit-Limit:
          $ref: '#/components/headers/RateLimitLimit'
        X-RateLimit-Remaining:
          $ref: '#/components/headers/RateLimitRemaining'
        X-RateLimit-Reset:
          $ref: '#/components/headers/RateLimitReset'
        CurrentPage:
          $ref: '#/components/headers/CurrentPage'
        TotalPages:
          $ref: '#/components/headers/TotalPages'
        TotalCount:
          $ref: '#/components/headers/TotalCount'
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Import'
  securitySchemes:
    api-key:
      type: apiKey
      description: Header value must be prefixed with api-key
      name: X-Auth-Token
      in: header
    oauth2:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://app.getresponse.com/oauth2_authorize.html
          scopes:
            all: all data access
        authorizationCode:
          authorizationUrl: https://app.getresponse.com/oauth2_authorize.html
          tokenUrl: https://api.getresponse.com/v3/token
          scopes:
            all: all data access
        clientCredentials:
          tokenUrl: https://api.getresponse.com/v3/token
          scopes:
            all: all data access
externalDocs:
  description: Find out more about API
  url: https://apidocs.getresponse.com
x-tagGroups:
- name: User
  tags:
  - Accounts
  - Multimedia
  - File Library
- name: Contacts
  tags:
  - Campaigns (Lists)
  - Contacts
  - Custom Fields
  - Search Contacts
  - Subscription Confirmations
  - Predefined Fields
  - Suppressions
  - Imports
- name: Email Marketing
  tags:
  - Newsletters
  - Autoresponders
  - RSS Newsletters
  - Legacy Landing Pages
  - From Fields
  - A/B tests
  - A/B tests - subject
  - Click Tracks
- name: Tags
  tags:
  - Tags
- name: GDPR Fields
  tags:
  - GDPR Fields
- name: Forms and surveys
  tags:
  - Legacy Forms
  - Forms
- name: Automation
  tags:
  - Workflows
  - Custom Events
  - Tracking
- name: Ecommerce
  tags:
  - Addresses
  - Carts
  - Categories
  - Meta Fields
  - Orders
  - Products
  - Product Variants
  - Shops
  - Taxes
- name: Transactional Emails
  tags:
  - Transactional Emails
  - Transactional Emails Templates
- name: SMS
  tags:
  - SMS Messages
  - SMS Automation Messages
- name: Statistics
  tags:
  - Ecommerce
  - Sms
  - Website
  - Landing Page
  - Form and Popup
- name: Webinars
  tags:
  - Webinars
- name: Websites
  tags:
  - Websites
  - Landing Pages
- name: Forms and Popups
  tags:
  - Forms and Popups
- name: Custom Reports
  tags:
  - Custom Reports