Sublime Security Message Groups API

The Message Groups API from Sublime Security — 17 operation(s) for message groups.

OpenAPI Specification

sublime-security-message-groups-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  contact:
    email: support@sublime.security
  title: Multi-Tenancy API (BETA) BinExplode Message Groups API
  version: ''
servers:
- url: '{scheme}://{server}'
  variables:
    scheme:
      default: https
      enum:
      - http
      - https
    server:
      default: platform.sublime.security
      description: Base URL of your Sublime deployment
security:
- bearerAuth: []
tags:
- name: Message Groups
paths:
  /v0/message-groups:
    get:
      description: List message groups
      operationId: listMessageGroups
      parameters:
      - description: Filters result to only message groups with the provided attachment name
        explode: true
        in: query
        name: attachment_name__is
        schema:
          description: Filters result to only message groups with the provided attachment name
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided attachment SHA256
        explode: true
        in: query
        name: attachment_sha256__is
        schema:
          description: Filters result to only message groups with the provided attachment SHA256
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided attack score verdict
        explode: true
        in: query
        name: attack_score_verdict__is
        schema:
          description: Filters result to only message groups with the provided attack score verdict
          items:
            enum:
            - unknown
            - likely_benign
            - suspicious
            - malicious
            - graymail
            - spam
            type: string
          type: array
        style: form
      - description: Filters result to only message groups that have flagged (ONLY) rules with the 'Attack surface reduction' tag
        in: query
        name: attack_surface_reduction__filter
        schema:
          description: Filters result to only message groups that have flagged (ONLY) rules with the 'Attack surface reduction' tag
          format: bool
          nullable: true
          type: string
      - description: Filters result to only message groups with the provided canonical ID
        explode: true
        in: query
        name: canonical_id__is
        schema:
          description: Filters result to only message groups with the provided canonical ID
          items:
            type: string
          type: array
        style: form
      - description: Inclusive start datetime filter, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups that contain a message processed at or after this time will be returned.
        in: query
        name: created_at__gte
        schema:
          description: Inclusive start datetime filter, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups that contain a message processed at or after this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: Exclusive end datetime filter, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups that contain a message processed before this time will be returned.
        in: query
        name: created_at__lt
        schema:
          description: Exclusive end datetime filter, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups that contain a message processed before this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: 'DEPRECATED: Use first_message_reported_at__gte'
        in: query
        name: first_message_reported_at[gte]
        schema:
          description: 'DEPRECATED: Use first_message_reported_at__gte'
          format: date-time
          nullable: true
          type: string
      - description: Filters result to only message groups with a message first reported at or after the provided time. Datetime must be in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z').
        in: query
        name: first_message_reported_at__gte
        schema:
          description: Filters result to only message groups with a message first reported at or after the provided time. Datetime must be in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z').
          format: date-time
          nullable: true
          type: string
      - description: Filters result to only message groups with at least one flagged message
        in: query
        name: flagged
        schema:
          description: Filters result to only message groups with at least one flagged message
          format: bool
          nullable: true
          type: boolean
      - description: Filters result to only message groups with the provided flagged rule ID
        explode: true
        in: query
        name: flagged_rule_id__is
        schema:
          description: Filters result to only message groups with the provided flagged rule ID
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided flagged rule severity
        explode: true
        in: query
        name: flagged_rule_severity__is
        schema:
          description: Filters result to only message groups with the provided flagged rule severity
          items:
            enum:
            - informational
            - low
            - medium
            - high
            - critical
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided historically flagged rule ID
        explode: true
        in: query
        name: historically_flagged_rule_id__is
        schema:
          description: Filters result to only message groups with the provided historically flagged rule ID
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided historically flagged rule severity
        explode: true
        in: query
        name: historically_flagged_rule_severity__is
        schema:
          description: Filters result to only message groups with the provided historically flagged rule severity
          items:
            enum:
            - informational
            - low
            - medium
            - high
            - critical
            type: string
          type: array
        style: form
      - description: 'DEPRECATED: Use created_at__gte instead'
        in: query
        name: last_message_created_at[gte]
        schema:
          description: 'DEPRECATED: Use created_at__gte instead'
          format: date-time
          nullable: true
          type: string
      - description: The maximum number of message groups to return. If the value exceeds the maximum, then the maximum value will be used.
        in: query
        name: limit
        schema:
          description: The maximum number of message groups to return. If the value exceeds the maximum, then the maximum value will be used.
          format: int32
          maximum: 500
          nullable: true
          type: integer
      - description: Filters result to only message groups with the provided mailbox email
        explode: true
        in: query
        name: mailbox_email__is
        schema:
          description: Filters result to only message groups with the provided mailbox email
          items:
            type: string
          type: array
        style: form
      - description: The (zero-based) offset of the message groups to return
        in: query
        name: offset
        schema:
          description: The (zero-based) offset of the message groups to return
          format: int32
          nullable: true
          type: integer
      - description: Filters result to only message groups with the provided recipient email
        explode: true
        in: query
        name: recipient_email__is
        schema:
          description: Filters result to only message groups with the provided recipient email
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided reporter
        explode: true
        in: query
        name: reported_as_phish_by__is
        schema:
          description: Filters result to only message groups with the provided reporter
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups which have or have not been reviewed
        in: query
        name: reviewed
        schema:
          description: Filters result to only message groups which have or have not been reviewed
          format: bool
          nullable: true
          type: boolean
      - description: Filters result to only message groups with the provided sender display name
        explode: true
        in: query
        name: sender_display_name__is
        schema:
          description: Filters result to only message groups with the provided sender display name
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided sender domain
        explode: true
        in: query
        name: sender_domain__is
        schema:
          description: Filters result to only message groups with the provided sender domain
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided sender email
        explode: true
        in: query
        name: sender_email__is
        schema:
          description: Filters result to only message groups with the provided sender email
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided spam status
        explode: true
        in: query
        name: spam__is
        schema:
          description: Filters result to only message groups with the provided spam status
          items:
            enum:
            - spam
            - not_spam
            - mixed
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with the provided subject
        explode: true
        in: query
        name: subject__is
        schema:
          description: Filters result to only message groups with the provided subject
          items:
            type: string
          type: array
        style: form
      - description: Filters result to only message groups with at least one reported message
        in: query
        name: user_reported
        schema:
          description: Filters result to only message groups with at least one reported message
          format: bool
          nullable: true
          type: boolean
      - description: Filters result to only message groups with the provided vendor
        explode: true
        in: query
        name: vendor_id__is
        schema:
          description: Filters result to only message groups with the provided vendor
          items:
            type: string
          type: array
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesV0ListMessageGroupsResponse'
          description: OK
      summary: List message groups
      tags:
      - Message Groups
  /v0/message-groups/dismiss:
    post:
      description: Dismiss all messages in multiple groups, including future messages.
      operationId: dismissMultipleMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DismissMultipleMessageGroupsInput'
      responses:
        '200':
          description: OK
      summary: Dismiss multiple message groups
      tags:
      - Message Groups
  /v0/message-groups/hunt:
    post:
      deprecated: true
      description: 'DEPRECATED: Hunt using MQL to find message groups. Please use the POST /v0/hunt-jobs endpoint instead.'
      operationId: huntMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HuntMessageGroupsInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: OK
      summary: Hunt message groups
      tags:
      - Message Groups
  /v0/message-groups/hunt/{id}:
    get:
      deprecated: true
      description: 'DEPRECATED: Retrieve the results of a completed hunt. Please use the GET /v0/hunt-jobs/:id endpoint instead.'
      operationId: getHuntResults
      parameters:
      - description: Task ID
        in: path
        name: id
        required: true
        schema:
          description: Task ID
          format: uuid
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesGetHuntResponse'
          description: OK
      summary: Get results of a hunt
      tags:
      - Message Groups
  /v0/message-groups/move-to-graymail:
    post:
      description: Move to Graymail all messages in multiple groups, including future messages.
      operationId: graymailMultipleMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GraymailMultipleMessageGroupsInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Graymail multiple message groups
      tags:
      - Message Groups
  /v0/message-groups/quarantine:
    post:
      description: Quarantine all messages in multiple groups, including future messages.
      operationId: quarantineMultipleMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuarantineMultipleMessageGroupsInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Quarantine multiple message groups
      tags:
      - Message Groups
  /v0/message-groups/restore:
    post:
      description: Restore all previously-trashed messages in multiple groups and turn off automatic trashing of future messages in the groups. "For an Office 365 message source, each message will be put back in the folder it was in before. For a Google Workspace message source, any applied labels (e.g. "Trash") will be removed from each message."
      operationId: restoreMultipleMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestoreMultipleMessageGroupsInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Restore multiple message groups
      tags:
      - Message Groups
  /v0/message-groups/review:
    post:
      description: Review, classify and take actions on message groups
      operationId: reviewMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReviewMessageGroupsInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HandlersReviewMessagesResponse'
          description: Accepted
      summary: Review message groups
      tags:
      - Message Groups
  /v0/message-groups/search:
    get:
      description: Search all message groups
      operationId: searchMessageGroups
      parameters:
      - description: Searches every field (performs a case insensitive, OR search in all fields). Not compatible with other search fields.
        in: query
        name: any
        schema:
          description: Searches every field (performs a case insensitive, OR search in all fields). Not compatible with other search fields.
          nullable: true
          type: string
      - description: Search for messages containing an attachment MD5 match
        in: query
        name: attachment_md5
        schema:
          description: Search for messages containing an attachment MD5 match
          maxLength: 32
          minLength: 32
          nullable: true
          type: string
      - description: Search for messages containing an attachment SHA1 match
        in: query
        name: attachment_sha1
        schema:
          description: Search for messages containing an attachment SHA1 match
          maxLength: 40
          minLength: 40
          nullable: true
          type: string
      - description: Search for messages containing an attachment SHA256 match
        in: query
        name: attachment_sha256
        schema:
          description: Search for messages containing an attachment SHA256 match
          maxLength: 64
          minLength: 64
          nullable: true
          type: string
      - description: Inclusive start datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups with a message processed at or after this time will be returned.
        in: query
        name: created_at[gte]
        schema:
          description: Inclusive start datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups with a message processed at or after this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups with a message processed before this time will be returned.
        in: query
        name: created_at[lt]
        schema:
          description: Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups with a message processed before this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: Deprecated, use created_at[lt]. Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups with a message processed before this time will be returned.
        in: query
        name: created_at[lte]
        schema:
          description: Deprecated, use created_at[lt]. Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups with a message processed before this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: Search in attachment filenames (case insensitive wildcard match)
        in: query
        name: file_name
        schema:
          description: Search in attachment filenames (case insensitive wildcard match)
          nullable: true
          type: string
      - description: Inclusive start datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups reported at or after this time will be returned.
        in: query
        name: first_reported_as_phish_at[gte]
        schema:
          description: Inclusive start datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-03-14T15:09:26Z'). Only message groups reported at or after this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups reported before this time will be returned.
        in: query
        name: first_reported_as_phish_at[lt]
        schema:
          description: Exclusive end datetime filter for search, in UTC using the ISO 8601 format (e.g., '2021-05-04T15:09:26Z'). Only message groups reported before this time will be returned.
          format: date-time
          nullable: true
          type: string
      - description: 'DEPRECATED: Use ''sender'' instead. Search in the From field. (case insensitive wildcard match)'
        in: query
        name: from
        schema:
          description: 'DEPRECATED: Use ''sender'' instead. Search in the From field. (case insensitive wildcard match)'
          nullable: true
          type: string
      - description: The maximum number of message groups to return. If the value exceeds the maximum, then the maximum value will be used.
        in: query
        name: limit
        schema:
          description: The maximum number of message groups to return. If the value exceeds the maximum, then the maximum value will be used.
          format: int32
          maximum: 500
          nullable: true
          type: integer
      - description: Search for a mailbox by email address (case insensitive, wildcard match)
        in: query
        name: mailbox
        schema:
          description: Search for a mailbox by email address (case insensitive, wildcard match)
          nullable: true
          type: string
      - description: Search in the Message-ID header (case insensitive wildcard match)
        in: query
        name: message_id
        schema:
          description: Search in the Message-ID header (case insensitive wildcard match)
          nullable: true
          type: string
      - description: The (zero-based) offset of the message groups to return
        in: query
        name: offset
        schema:
          description: The (zero-based) offset of the message groups to return
          format: int32
          nullable: true
          type: integer
      - description: Search in the From field (case insensitive wildcard match)
        in: query
        name: sender
        schema:
          description: Search in the From field (case insensitive wildcard match)
          nullable: true
          type: string
      - description: Search for messages in any of the given states
        explode: true
        in: query
        name: states
        schema:
          description: Search for messages in any of the given states
          items:
            type: string
          type: array
        style: form
      - description: Search in the message subject (case insensitive wildcard match)
        in: query
        name: subject
        schema:
          description: Search in the message subject (case insensitive wildcard match)
          nullable: true
          type: string
      - description: Search in the To, CC, and Bcc fields (case insensitive wildcard match). If possible, use 'mailbox' and 'type' instead for better performance
        in: query
        name: to
        schema:
          description: Search in the To, CC, and Bcc fields (case insensitive wildcard match). If possible, use 'mailbox' and 'type' instead for better performance
          nullable: true
          type: string
      - description: Search for messages by type
        in: query
        name: type
        schema:
          description: Search for messages by type
          nullable: true
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesV0ListMessageGroupsResponse'
          description: OK
      summary: Search message groups
      tags:
      - Message Groups
  /v0/message-groups/siem-summary:
    get:
      description: Returns a paginated, reduced-field summary of flagged message groups intended for SIEM ingestion. Array fields are bounded to keep payloads under typical SIEM batch limits.
      operationId: getMessageGroupSIEMSummary
      parameters:
      - description: Opaque pagination cursor returned in the previous response's cursor field.
        in: query
        name: cursor
        schema:
          description: Opaque pagination cursor returned in the previous response's cursor field.
          nullable: true
          type: string
      - description: The maximum number of message groups to return.
        in: query
        name: limit
        schema:
          default: 100
          description: The maximum number of message groups to return.
          format: int32
          maximum: 1000
          minimum: 1
          type: integer
      - description: Inclusive lower bound on the sort timestamp (newest_created_at for type=flagged, first_reported_as_phish_at for type=reported).
        in: query
        name: timestamp__gte
        schema:
          description: Inclusive lower bound on the sort timestamp (newest_created_at for type=flagged, first_reported_as_phish_at for type=reported).
          format: date-time
          nullable: true
          type: string
      - description: Exclusive upper bound on the sort timestamp (newest_created_at for type=flagged, first_reported_as_phish_at for type=reported).
        in: query
        name: timestamp__lt
        schema:
          description: Exclusive upper bound on the sort timestamp (newest_created_at for type=flagged, first_reported_as_phish_at for type=reported).
          format: date-time
          nullable: true
          type: string
      - description: 'Which timestamp the endpoint sorts/filters on: ''flagged'' uses newest_created_at, ''reported'' uses first_reported_as_phish_at.'
        in: query
        name: type
        schema:
          default: flagged
          description: 'Which timestamp the endpoint sorts/filters on: ''flagged'' uses newest_created_at, ''reported'' uses first_reported_as_phish_at.'
          enum:
          - flagged
          - reported
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesMessageGroupSIEMSummaryResponse'
          description: OK
      summary: Get SIEM-oriented summary of flagged message groups
      tags:
      - Message Groups
  /v0/message-groups/trash:
    post:
      description: Trash all messages in multiple groups, including future messages. For an Office 365 message source, each message will be moved to the "Recoverable Items" folder. For a Google Workspace message source, the "Trash" label will be added to each message.
      operationId: trashMultipleMessageGroups
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrashMultipleMessageGroupsInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Trash multiple message groups
      tags:
      - Message Groups
  /v0/message-groups/{id}:
    get:
      description: Retrieve the details of a single message group.
      operationId: getMessageGroup
      parameters:
      - description: Canonical ID of the message group to retrieve
        in: path
        name: id
        required: true
        schema:
          description: Canonical ID of the message group to retrieve
          type: string
      - description: Sort previews with these message IDs at the top
        explode: true
        in: query
        name: sort_previews_message_id__is
        schema:
          description: Sort previews with these message IDs at the top
          items:
            type: string
          type: array
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesMessageGroupV0'
          description: OK
      summary: Get a single message group
      tags:
      - Message Groups
  /v0/message-groups/{id}/dismiss:
    post:
      description: Dismiss all messages in a group, including future messages.
      operationId: dismissMessageCanonicalGroup
      parameters:
      - description: Canonical ID of the message group to dismiss
        in: path
        name: id
        required: true
        schema:
          description: Canonical ID of the message group to dismiss
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DismissMessageCanonicalGroupInput'
      responses:
        '200':
          description: OK
      summary: Dismiss message group
      tags:
      - Message Groups
  /v0/message-groups/{id}/quarantine:
    post:
      description: Quarantine all messages in a group, including future messages.
      operationId: quarantineMessageCanonicalGroup
      parameters:
      - description: Canonical ID of the message group to quarantine
        in: path
        name: id
        required: true
        schema:
          description: Canonical ID of the message group to quarantine
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuarantineMessageCanonicalGroupInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Quarantine message group
      tags:
      - Message Groups
  /v0/message-groups/{id}/restore:
    post:
      description: Restore all previously-trashed or quarantined messages in a group and turn off automatic trashing/quarantining of future messages in the group. "For an Office 365 message source, each message will be put back in the folder it was in before. For a Google Workspace message source, any applied labels (e.g. "Trash") will be removed from each message."
      operationId: restoreMessageCanonicalGroup
      parameters:
      - description: Canonical ID of the message group to restore
        in: path
        name: id
        required: true
        schema:
          description: Canonical ID of the message group to restore
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestoreMessageCanonicalGroupInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Restore message group
      tags:
      - Message Groups
  /v0/message-groups/{id}/share-with-sublime:
    post:
      description: Share a message with the Sublime team
      operationId: shareWithSublimePublic
      parameters:
      - description: Canonical ID of the message group to share
        in: path
        name: id
        required: true
        schema:
          description: Canonical ID of the message group to share
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShareWithSublimePublicInput'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Handler_typesTaskAccepted'
          description: Accepted
      summary: Share a message with Sublime
      tags:
      - Message Groups
  /v0/message-groups/{id}/trash:
    post:
      description: Trash all messages in a group, including future messages. For an Office 365 message source, each message will be moved to the "Recoverable Items" folder. For a Google Workspace message source, the "Trash" label will be added to each message.
      operationId: trashMessageCanonicalGroup
      parameters:
      - descripti

# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sublime-security/refs/heads/main/openapi/sublime-security-message-groups-api-openapi.yml