GetResponse Imports API

Imports API documentation The Imports area of the GetResponse API v3 — 3 operation(s) across 2 path(s), split by tag from the provider-published OpenAPI at https://apireference.getresponse.com/open-api.json.

OpenAPI Specification

getresponse-imports-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: GetResponse APIv3 Imports
  version: 3.2026-07-28T07:58:55+00:00
  description: The Imports operations of the GetResponse APIv3, split by tag from the provider-published
    OpenAPI at https://apireference.getresponse.com/open-api.json
  contact:
    name: API Support - DevZone
    url: https://app.getresponse.com/feedback.html?devzone=yes
    email: getresponse-devzone@cs.getresponse.com
servers:
- url: https://api.getresponse.com/v3
  description: GetResponse
- url: https://api3.getresponse360.com/v3
  description: GetResponse MAX US
- url: https://api3.getresponse360.pl/v3
  description: GetResponse MAX PL
tags:
- name: Imports
  description: Imports API documentation
paths:
  /imports/{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
    parameters:
    - $ref: '#/components/parameters/importId'
  /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](https://apireference.getresponse.com/#operation/getImportById) (provide the importId  from
        the response), or subscribe to an [import finished](https://apidocs.getresponse.com/v3/payloads#contacts-import-finished)
        webhook. Please note, that this endpoint has **specific rate limits** - for details please refer
        to [Create Import Limits](https://apidocs.getresponse.com/v3/case-study/create-import#limits).
        For more information on imports, check our [API Docs](https://apidocs.getresponse.com/v3/case-study/create-import)
        or [Help Center](https://www.getresponse.com/help/how-do-i-prepare-a-file-for-import.html)
      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:
    CurrentPage:
      description: The current page number
      schema:
        type: integer
        format: int32
    RateLimitLimit:
      description: The total number of requests available per time frame
      schema:
        type: integer
        format: int32
    RateLimitRemaining:
      description: The number of requests left in the current time frame
      schema:
        type: integer
        format: int32
    RateLimitReset:
      description: Seconds left in the current time frame, e.g. "432 seconds"
      schema:
        type: string
    TotalCount:
      description: The total number of resources found for the specified conditions
      schema:
        type: integer
        format: int32
    TotalPages:
      description: The total number of pages
      schema:
        type: integer
        format: int32
  parameters:
    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
    Page:
      name: page
      in: query
      description: Page number
      required: false
      schema:
        type: integer
        format: int32
        default: 1
        minimum: 1
    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
  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'
  schemas:
    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
          readOnly: true
          example: Promo campaign
          nullable: true
      type: object
    DateOrDateTime:
      oneOf:
      - type: string
        format: date
        example: '2018-04-15'
      - type: string
        format: date-time
        example: 2018-01-15T13:30:42+0000
    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
    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
    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
    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
    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
    NewImportContact:
      type: array
      items:
        type: string
        example: example@somedomain.com
    SortOrderEnum:
      type: string
      enum:
      - ASC
      - DESC
  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