Skip to content

Get attachments

GET/quarantine/messages/{id}/attachments

Email Management API · Quarantine

Get all attachments of a quaratined message.

Parameters

Name In Type Required Description
X-Tenant-ID header string (uuid) Yes Tenant ID.
id path string (uuid) Yes ID from 'X-Sophos-Email-ID' MIME header.
pageSize query integer No The size of the page requested.
page query integer No The page number to fetch, starting with 1.

Request samples

curl -X GET "https://api-<data-region>.central.sophos.com/email/v1/quarantine/messages/<id>/attachments" -H "Authorization: Bearer <access-token>" -H "X-Tenant-ID: <tenant-id>"

import requests

response = requests.get(
    "https://api-<data-region>.central.sophos.com/email/v1/quarantine/messages/<id>/attachments",
    headers={
        "Authorization": "Bearer <access-token>",
        "X-Tenant-ID": "<tenant-id>",
    },
)
print(response.json())

$headers = @{
    "Authorization" = "Bearer <access-token>"
    "X-Tenant-ID" = "<tenant-id>"
}
Invoke-RestMethod -Method GET -Uri "https://api-<data-region>.central.sophos.com/email/v1/quarantine/messages/<id>/attachments" -Headers $headers

package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() {
    req, err := http.NewRequest("GET", "https://api-<data-region>.central.sophos.com/email/v1/quarantine/messages/<id>/attachments", nil)
    if err != nil {
        panic(err)
    }
    req.Header.Set("Authorization", "Bearer <access-token>")
    req.Header.Set("X-Tenant-ID", "<tenant-id>")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}

const response = await fetch("https://api-<data-region>.central.sophos.com/email/v1/quarantine/messages/<id>/attachments", {
  method: "GET",
  headers: {
    "Authorization": "Bearer <access-token>",
    "X-Tenant-ID": "<tenant-id>",
  },
});
const data = await response.json();
console.log(data);

Responses

200 — Attachments in a quarantined message.

Response fields

pagesobjectrequired
Show child attributesHide child attributes
currentintegerrequired
The 1-based page number being returned.
sizeintegerrequired
The size of the page being returned.
totalinteger
(Optional) The total number of pages that exist, if pageTotal=true in the request.
itemsinteger
(Optional) The total number of items across all pages.
maxSizeintegerrequired
The maximum page size that can be requested.
itemsarray of objectrequired
Attachments.
Must contain at most 500 items.
Attachment details.
Show child attributesHide child attributes
namestring
Attachment name.
sizeInBytesnumber
Attachment size, in bytes.
fileTypestring
Attachment type.
strippedboolean
Whether the attachment has been stripped from the message.

Errors

Status Meaning
400 Bad request.
404 Not found.
500 Unexpected error.

All error responses share the same shape — see the error response object.

Response examples

200

{
  "pages": {
    "current": 0,
    "size": 0,
    "total": 0,
    "items": 0,
    "maxSize": 0
  },
  "items": [
    {
      "name": "photo.png",
      "sizeInBytes": 374427,
      "fileType": "image",
      "stripped": false
    }
  ]
}

See the guide for a narrative walkthrough of this API.