Sequenzy Suppressions API

The Suppressions API from Sequenzy — 2 operation(s) for suppressions.

Operations 3

GET /suppressions List suppressed recipients #
GET /suppressions/{email} Get recipient suppression #
DELETE /suppressions/{email} Remove a workspace soft-bounce escalation #

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/sequenzy:sequenzy-suppressions-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

sequenzy-suppressions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Sequenzy Suppressions API
  description: Sequenzy API for managing subscribers, tags, events, sequences, and transactional emails
  version: 1.0.0
servers:
- url: https://api.sequenzy.com/api/v1
  description: Production server
- url: https://api.sequenzy.com/v1
  description: Legacy production server alias
security:
- bearerAuth: []
tags:
- name: Suppressions
paths:
  /suppressions:
    get:
      summary: List suppressed recipients
      description: 'Lists the recipients this company cannot reach, newest suppression first by default.


        Four product-level suppression types appear:


        - `suppressionType: invalid_recipient` - SMTP evidence conclusively identifies an invalid destination. It is global, visible to companies associated with the address, and protected.

        - `suppressionType: unknown_hard_bounce` - a permanent/undetermined failure without enough evidence to declare the inbox invalid. It is company-scoped and protected.

        - `suppressionType: soft_bounce_escalation` - repeated delivery failures from this company. It is company-scoped and removable.

        - `suppressionType: complaint` - the recipient reported this company''s email as spam. It is company-scoped and protected.


        The platform-wide list is never exposed: a global row is returned only when the address is already associated with the authenticated company.'
      operationId: listRecipientSuppressions
      tags:
      - Suppressions
      parameters:
      - name: search
        in: query
        required: false
        schema:
          type: string
          maxLength: 255
        description: Case-insensitive substring filter on the recipient email address.
      - name: page
        in: query
        required: false
        schema:
          type: integer
          default: 1
        description: 1-based page number.
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 25
          maximum: 100
        description: Entries per page (max 100).
      - name: sort
        in: query
        required: false
        schema:
          type: string
          enum:
          - suppressedAt
          - email
          - status
          default: suppressedAt
        description: 'Field to order by. `status` lists removable workspace escalations before protected

          suppressions. An unrecognized value falls back to `suppressedAt` rather than failing the

          request - read `sortBy` in the response to confirm what was applied.

          '
      - name: order
        in: query
        required: false
        schema:
          type: string
          enum:
          - asc
          - desc
        description: 'Sort direction. Defaults to `desc` for `suppressedAt` and `status`, `asc` for `email`.

          '
      responses:
        '200':
          description: Suppressed recipients
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  suppressions:
                    type: array
                    items:
                      type: object
                      properties:
                        email:
                          type: string
                          format: email
                        suppressionType:
                          type: string
                          enum:
                          - invalid_recipient
                          - unknown_hard_bounce
                          - soft_bounce_escalation
                          - complaint
                          description: Stable product-level classification independent of provider bounce sub-types.
                        reason:
                          type: string
                          enum:
                          - bounced
                          - complaint
                        scope:
                          type: string
                          enum:
                          - global
                          - company
                          description: global blocks every workspace; company blocks only this one.
                        source:
                          type: string
                          enum:
                          - bounced_email
                          - email_send_complaint
                        bounceType:
                          type:
                          - string
                          - 'null'
                        bounceSubType:
                          type:
                          - string
                          - 'null'
                        bounceCount:
                          type:
                          - integer
                          - 'null'
                        suppressedAt:
                          type: string
                          format: date-time
                        delistable:
                          type: boolean
                          description: True only for company-scoped soft-bounce escalations.
                  total:
                    type: integer
                  page:
                    type: integer
                  limit:
                    type: integer
                  hasMore:
                    type: boolean
                  sortBy:
                    type: string
                    enum:
                    - suppressedAt
                    - email
                    - status
                    description: The sort field actually applied.
                  sortOrder:
                    type: string
                    enum:
                    - asc
                    - desc
                    description: The sort direction actually applied.
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: No company selected
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          $ref: '#/components/responses/TransientDatabaseUnavailable'
  /suppressions/{email}:
    get:
      summary: Get recipient suppression
      description: Checks one exact recipient against Sequenzy's bounce and complaint safeguards. Sequenzy suppresses solely from its own bounce records; the email provider's account-level suppression list is not consulted. The lookup does not expose unrelated recipients.
      operationId: getRecipientSuppression
      tags:
      - Suppressions
      parameters:
      - name: email
        in: path
        required: true
        schema:
          type: string
          format: email
        description: Exact recipient email address
      - name: region
        in: query
        required: false
        schema:
          type: string
          example: us-east-1
        description: 'Deprecated: accepted and ignored. It previously limited a provider-side suppression lookup, which no longer happens.'
      responses:
        '200':
          description: Recipient suppression status
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  suppression:
                    type: object
                    properties:
                      email:
                        type: string
                        format: email
                      knownRecipient:
                        type: boolean
                      suppressed:
                        type: boolean
                      local:
                        type: object
                        properties:
                          suppressed:
                            type: boolean
                          suppressionType:
                            type:
                            - string
                            - 'null'
                            enum:
                            - invalid_recipient
                            - unknown_hard_bounce
                            - soft_bounce_escalation
                            - complaint
                            - null
                            description: Stable product-level classification. Null when no typed local suppression row exists.
                          reason:
                            type:
                            - string
                            - 'null'
                          source:
                            type:
                            - string
                            - 'null'
                          suppressionId:
                            type:
                            - string
                            - 'null'
                          scope:
                            type:
                            - string
                            - 'null'
                            enum:
                            - global
                            - company
                            - null
                            description: global when the block applies platform-wide, company when it is contained to this workspace. Null when the recipient is not locally suppressed.
                          delistable:
                            type: boolean
                            description: True only for a company-scoped soft-bounce escalation.
                      ses:
                        type: object
                        properties:
                          regionsChecked:
                            type: array
                            items:
                              type: string
                          entries:
                            type: array
                            items:
                              type: object
                              properties:
                                email:
                                  type: string
                                  format: email
                                region:
                                  type: string
                                reason:
                                  type: string
                                  enum:
                                  - BOUNCE
                                  - COMPLAINT
                                lastUpdateTime:
                                  type:
                                  - string
                                  - 'null'
                                  format: date-time
                                messageId:
                                  type:
                                  - string
                                  - 'null'
                                feedbackId:
                                  type:
                                  - string
                                  - 'null'
        '400':
          description: Invalid email address
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: No company selected
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          $ref: '#/components/responses/TransientDatabaseUnavailable'
    delete:
      summary: Remove a workspace soft-bounce escalation
      description: Removes one company-associated recipient's workspace-scoped soft-bounce escalation and reactivates a bounced company subscriber. Global invalid-recipient suppressions, other companies' scoped rows, complaints, and unsubscribes are protected.
      operationId: removeRecipientSuppression
      tags:
      - Suppressions
      parameters:
      - name: email
        in: path
        required: true
        schema:
          type: string
          format: email
        description: Exact company-associated recipient email address
      - name: region
        in: query
        required: false
        schema:
          type: string
          example: us-east-1
        description: 'Deprecated: accepted and ignored. It previously limited a provider-side suppression lookup, which no longer happens.'
      responses:
        '200':
          description: Suppression cleanup result
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  email:
                    type: string
                    format: email
                  removed:
                    type: boolean
                  removedLocalBounce:
                    type: boolean
                  removedSesRegions:
                    type: array
                    description: Always empty. Sequenzy suppresses solely from its own bounce records and neither reads nor writes the email provider's suppression list. Retained for response compatibility.
                    items:
                      type: string
                  reactivatedSubscriberIds:
                    type: array
                    items:
                      type: string
                  remainingSuppression:
                    type: object
                    description: Recipient suppression status after cleanup
        '400':
          description: Invalid email address
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: No company selected
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Recipient is not associated with the selected company
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: The matching suppression is global, provider-level, complaint-based, or otherwise protected
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          $ref: '#/components/responses/TransientDatabaseUnavailable'
components:
  responses:
    TransientDatabaseUnavailable:
      description: The database was temporarily unavailable. The request may be retried after the delay in Retry-After.
      headers:
        Retry-After:
          $ref: '#/components/headers/RetryAfter'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            error: The service could not reach its database for a moment. Retry the request.
            code: SERVICE_UNAVAILABLE
  schemas:
    InputIssue:
      type: object
      properties:
        path:
          type: string
          description: Dotted field path, such as `audience.subscriberIds[0]`. Empty when the problem is with the request body itself.
          example: kind
        message:
          type: string
          description: What is wrong with the field.
          example: must be "add_tags"
        allowedValues:
          type: array
          description: Accepted values when the field only takes a fixed set of values.
          items: {}
          example:
          - add_tags
      required:
      - path
      - message
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          example: Error message
        code:
          type: string
          description: Optional stable machine-readable error discriminator when available.
          example: COMPANY_CREATE_REQUIRES_PERSONAL_KEY
        retryable:
          type: boolean
          description: Whether retrying the request can recover from the error.
        issues:
          type: array
          description: Field-level problems with the request, when the endpoint reports them. Up to ten entries; `error` summarizes the first three.
          items:
            $ref: '#/components/schemas/InputIssue'
      required:
      - error
  headers:
    RetryAfter:
      description: Number of seconds to wait before retrying the request.
      schema:
        type: integer
        minimum: 1
        example: 1
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key passed as Bearer token