SMTP2GO STATISTICS API

Delivery, bounce, spam, unsubscribe and cycle statistics

Operations 6

POST /stats/email_bounces Email bounces #
POST /stats/email_cycle Email cycle #
POST /stats/email_history Email history #
POST /stats/email_spam Email spam #
POST /stats/email_summary Email summary #
POST /stats/email_unsubs Email unsubscribes #

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/smtp2go-statistics-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no email required.

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

OpenAPI Specification

smtp2go-statistics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: SMTP2GO STATISTICS API
  version: 3.0.4
  description: The SMTP2GO v3 REST API for sending transactional email and SMS, managing sender domains and single sender emails, SMTP users, API keys, IP allow lists and IP auth, templates, webhooks, suppressions, subaccounts, dedicated IPs, email archive, activity search and delivery statistics. Every operation is a POST (with a PATCH variant on two paths) carrying a JSON body; authentication is an API key supplied in the X-Smtp2go-Api-Key header or as an api_key field in the request body.
  contact:
    name: SMTP2GO Support
    url: https://support.smtp2go.com/
  termsOfService: https://www.smtp2go.com/terms/
  x-harvest:
    source: https://developers.smtp2go.com/mcp
    method: MCP tools/call get-endpoint, one call per path+method, assembled verbatim
    harvested: '2026-08-13'
    server_info:
      name: SMTP2GO-API-Docs
      version: 3.0.4
    note: SMTP2GO does not publish a single fetchable OpenAPI URL; the ReadMe registry path answers 429 to non-browser clients. The provider's own remote MCP server returns the authoritative OpenAPI 3.1.0 fragment for each endpoint anonymously, and those 73 fragments are merged here without modification.
servers:
- url: https://api.smtp2go.com/v3
  description: Regionless
- url: https://us-api.smtp2go.com/v3
  description: US Region
- url: https://eu-api.smtp2go.com/v3
  description: EU Region
- url: https://au-api.smtp2go.com/v3
  description: AU Region
security:
- sec0: []
tags:
- name: STATISTICS
  description: Delivery, bounce, spam, unsubscribe and cycle statistics
paths:
  /stats/email_bounces:
    post:
      tags:
      - STATISTICS
      summary: Email bounces
      description: Retrieve a summary of bounces and rejects, for the last 30 days.
      operationId: email-bounces
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required: []
              properties:
                username:
                  type: string
                  description: Allows statistics to be returned for a specific user.
      responses:
        '200':
          description: Bounce report
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: ee9b9484-63eb-11ed-8da7-f23c9216ce11
                    data:
                      emails: 1
                      rejects: 0
                      softbounces: 0
                      hardbounces: 0
                      bounce_percent: '0.00'
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: 2917fc07-d685-4fea-b49a-14087058461f
                  data:
                    type: object
                    required:
                    - emails
                    - hardbounces
                    - bounce_percent
                    - softbounces
                    - rejects
                    properties:
                      emails:
                        type: integer
                        example: 159
                        default: 0
                      hardbounces:
                        type: integer
                        example: 0
                        default: 0
                      bounce_percent:
                        type: string
                        example: '0.00'
                      softbounces:
                        type: integer
                        example: 0
                        default: 0
                      rejects:
                        type: integer
                        example: 0
                        default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
  /stats/email_cycle:
    post:
      tags:
      - STATISTICS
      summary: Email cycle
      description: Retrieve a summary of your Account activity, including the start and end date of your monthly plan, the number of emails sent this cycle, the number of emails remaining and the number of emails in your monthly allowance.
      operationId: email-cycle
      responses:
        '200':
          description: Summary of Account
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 4b84c952-9bca-432f-a68e-585e4c7a969c
                    data:
                      cycle_start: '2022-11-01 00:00:00+00:00'
                      cycle_end: '2022-11-30 00:00:00+00:00'
                      cycle_used: 1
                      cycle_remaining: 9999
                      cycle_max: 10000
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: 4b84c952-9bca-432f-a68e-585e4c7a969c
                  data:
                    type: object
                    required:
                    - cycle_end
                    - cycle_used
                    - cycle_start
                    - cycle_max
                    - cycle_remaining
                    properties:
                      cycle_end:
                        type: string
                        example: '2016-08-04 01:49:15.863998'
                      cycle_used:
                        type: integer
                        example: 0
                        default: 0
                      cycle_start:
                        type: string
                        example: '2016-08-01 01:49:15.863998'
                      cycle_max:
                        type: integer
                        example: 1000
                        default: 0
                      cycle_remaining:
                        type: integer
                        example: 1000
                        default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
  /stats/email_history:
    post:
      tags:
      - STATISTICS
      summary: Email history
      description: Retrieve a summary of activity from a specified date range (defaults to last 30 days), per sender email address, SMTP username, domain or subaccount.
      operationId: email-history
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                group_by:
                  type: string
                  description: One of [<code>email_address</code>, <code>username</code>, <code>domain</code>, <code>subaccount</code>] - controls the grouping of results. Defaults to <code>email_address</code>
                start_date:
                  type: string
                  description: ISO-8601 formatted datetime which defaults to 30 days prior to the current date at midnight. Timezone is UTC
                end_date:
                  type: string
                  description: ISO-8601 formatted datetime which defaults the current time. Timezone is UTC
                subaccounts:
                  type: array
                  description: Pass an optional list of subaccount ids to fetch a summary of only particular subaccounts, ID's can be found by querying <code>/subaccounts/search</code>
      responses:
        '200':
          description: Summary of Account
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: f3898083-f5d5-4512-86bd-e02bd1685840
                    data:
                      count: 1
                      history:
                      - used: 1
                        bytecount: 1022
                        avgsize: 1022
                        email_address: test3@example.com
                        lastip: 82.1.149.48
                        bounces: 0
                        clicks: 0
                        opens: 0
                        rejects: 0
                        spam: 0
                        unsubscribes: 0
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: f3898083-f5d5-4512-86bd-e02bd1685840
                  data:
                    type: object
                    required:
                    - count
                    - history
                    properties:
                      count:
                        type: integer
                        example: 159
                        default: 0
                      bounce_percent_total:
                        type: number
                        example: 1.24
                        default: 0
                        description: The total percentage of emails that bounced.
                      open_percent_total:
                        type: number
                        example: 1.24
                        default: 0
                        description: The total percentage of emails that were opened.
                      reject_percent_total:
                        type: number
                        example: 1.24
                        default: 0
                        description: The total percentage of emails that were rejected.
                      spam_percent_total:
                        type: number
                        example: 1.24
                        default: 0
                        description: The total percentage of emails that were marked as spam.
                      unsubscribe_percent_total:
                        type: number
                        example: 1.24
                        default: 0
                        description: The total percentage of emails that were unsubscribed from.
                      history:
                        type: array
                        items:
                          type: object
                          required:
                          - lastip
                          - used
                          - bytecount
                          - avgsize
                          properties:
                            subaccount:
                              type: string
                              example: My Subaccount Name
                              description: Only returned if <code>group_by</code> is set to <code>subaccount</code>
                            domain:
                              type: string
                              example: test.com
                              description: Only returned if <code>group_by</code> is set to <code>domain</code>
                            domain_verified:
                              type: boolean
                              example: true
                              description: Only returned if <code>group_by</code> is set to <code>domain</code>
                            lastip:
                              type: string
                              example: 55.67.22.12
                            used:
                              type: integer
                              example: 123
                              default: 0
                            email_address:
                              type: string
                              example: test3@example.com
                              description: Only returned if <code>group_by</code> is set to <code>email_address</code>
                            username:
                              type: string
                              example: my_user
                              description: Only returned if <code>group_by</code> is set to <code>username</code>
                            description:
                              type: string
                              description: A comment or description of the user, Only returned if <code>group_by</code> is set to <code>username</code>
                            bytecount:
                              type: integer
                              example: 148113
                              default: 0
                            avgsize:
                              type: number
                              example: 1204.1707317073171
                              default: 0
                            bounces:
                              type: integer
                              example: 123
                              default: 0
                            clicks:
                              type: integer
                              example: 123
                              default: 0
                            opens:
                              type: integer
                              example: 123
                              default: 0
                            rejects:
                              type: integer
                              example: 123
                              default: 0
                            spam:
                              type: integer
                              example: 123
                              default: 0
                            unsubscribes:
                              type: integer
                              example: 123
                              default: 0
                            bounce_percent:
                              type: number
                              example: 1.24
                              default: 0
                              description: The percentage of emails that bounced.
                            open_percent:
                              type: number
                              example: 1.24
                              default: 0
                              description: The percentage of emails that were opened.
                            reject_percent:
                              type: number
                              example: 1.24
                              default: 0
                              description: The percentage of emails that were rejected.
                            spam_percent:
                              type: number
                              example: 1.24
                              default: 0
                              description: The percentage of emails that were marked as spam.
                            unsubscribe_percent:
                              type: number
                              example: 1.24
                              default: 0
                              description: The percentage of emails that recipients unsubscribed.
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
  /stats/email_spam:
    post:
      tags:
      - STATISTICS
      summary: Email spam
      description: Retrieve a summary of spam complaints and rejects, for the last 30 days.
      operationId: email-spam
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required: []
              properties:
                username:
                  type: string
                  description: Allows statistics to be returned for a specific user.
      responses:
        '200':
          description: Spam report
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 0757ba83-9dfc-4584-bb0c-baa06a28a377
                    data:
                      emails: 1
                      rejects: 0
                      spams: 0
                      spam_percent: '0.00'
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: 0757ba83-9dfc-4584-bb0c-baa06a28a377
                  data:
                    type: object
                    required:
                    - spam_percent
                    - emails
                    - spams
                    - rejects
                    properties:
                      spam_percent:
                        type: string
                        example: '0.00'
                      emails:
                        type: integer
                        example: 159
                        default: 0
                      spams:
                        type: integer
                        example: 0
                        default: 0
                      rejects:
                        type: integer
                        example: 0
                        default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
  /stats/email_summary:
    post:
      tags:
      - STATISTICS
      summary: Email summary
      description: Retrieve a combination of the email_bounces, email_cycle, email_spam, and email_unsubs calls in one report. Note this call may take longer to complete.
      operationId: email-summary
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: Allows statistics to be returned for a specific user
      responses:
        '200':
          description: Account Statistics
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 72f48187-64d9-4a2f-ba9c-527a2a7911f7
                    data:
                      spam_emails: 0
                      cycle_start: '2022-11-01 00:00:00+00:00'
                      cycle_end: '2022-11-30 00:00:00+00:00'
                      cycle_used: 1
                      cycle_remaining: 9999
                      cycle_max: 10000
                      email_count: 1
                      bounce_rejects: 0
                      softbounces: 0
                      hardbounces: 0
                      bounce_percent: '0.00'
                      spam_rejects: 0
                      spam_percent: '0.00'
                      unsubscribes: 0
                      unsubscribe_percent: '0.0'
                      opens: 0
                      clicks: 0
                      rejects: 0
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: 72f48187-64d9-4a2f-ba9c-527a2a7911f7
                  data:
                    type: object
                    required:
                    - cycle_end
                    - spam_rejects
                    - bounce_percent
                    - unsubscribes
                    - bounce_rejects
                    - spam_percent
                    - softbounces
                    - cycle_max
                    - spam_emails
                    - cycle_remaining
                    - cycle_start
                    - unsubscribe_percent
                    - cycle_used
                    - hardbounces
                    - email_count
                    - opens
                    - clicks
                    - rejects
                    properties:
                      cycle_end:
                        type: string
                        example: '2016-08-04 01:49:15.863998'
                      spam_rejects:
                        type: integer
                        example: 1
                        default: 0
                        deprecated: true
                      bounce_percent:
                        type: string
                        example: '7.33'
                      unsubscribes:
                        type: integer
                        example: 32
                        default: 0
                      bounce_rejects:
                        type: integer
                        example: 11
                        default: 0
                        deprecated: true
                      spam_percent:
                        type: string
                        example: '1.33'
                      softbounces:
                        type: integer
                        example: 6
                        default: 0
                      cycle_max:
                        type: integer
                        example: 1000
                        default: 0
                      spam_emails:
                        type: integer
                        example: 2
                        default: 0
                      cycle_remaining:
                        type: integer
                        example: 850
                        default: 0
                      cycle_start:
                        type: string
                        example: '2016-08-01 01:49:15.863998'
                      unsubscribe_percent:
                        type: string
                        example: '21.33'
                      cycle_used:
                        type: integer
                        example: 150
                        default: 0
                      hardbounces:
                        type: integer
                        example: 5
                        default: 0
                      email_count:
                        type: integer
                        example: 150
                        default: 0
                      opens:
                        type: integer
                        example: 123
                        default: 0
                      clicks:
                        type: integer
                        example: 321
                        default: 0
                      rejects:
                        type: integer
                        example: 11
                        default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
  /stats/email_unsubs:
    post:
      tags:
      - STATISTICS
      summary: Email unsubscribes
      description: Retrieve a summary of unsubscribes and rejects, for the last 30 days.
      operationId: email-unsubscribes
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required: []
              properties:
                username:
                  type: string
                  description: Allows statistics to be returned for a specific user.
      responses:
        '200':
          description: Unsubscribe report
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: e6e94157-90c7-496d-abdf-a5fef899ad54
                    data:
                      emails: 1
                      rejects: 0
                      unsubscribes: 0
                      unsubscribe_percent: '0.00'
              schema:
                type: object
                required:
                - request_id
                - data
                properties:
                  request_id:
                    type: string
                    example: e6e94157-90c7-496d-abdf-a5fef899ad54
                  data:
                    type: object
                    required:
                    - emails
                    - unsubscribes
                    - rejects
                    - unsubscribe_percent
                    properties:
                      emails:
                        type: integer
                        example: 159
                        default: 0
                      unsubscribes:
                        type: integer
                        example: 0
                        default: 0
                      rejects:
                        type: integer
                        example: 0
                        default: 0
                      unsubscribe_percent:
                        type: string
                        example: '0.00'
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    request_id: 22e5acba-43bf-11e6-ae42-408d5cce2644
                    data:
                      error: You do not have permission to access this API endpoint
                      error_code: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
              schema:
                type: object
                properties:
                  request_id:
                    type: string
                    example: 22e5acba-43bf-11e6-ae42-408d5cce2644
                  data:
                    type: object
                    properties:
                      error:
                        type: string
                        example: You do not have permission to access this API endpoint
                      error_code:
                        type: string
                        example: E_ApiResponseCodes.ENDPOINT_PERMISSION_DENIED
      deprecated: false
components:
  securitySchemes:
    sec0:
      type: apiKey
      in: header
      name: X-Smtp2go-Api-Key
      x-default: ${SMTP2GO_API_KEY}