Skip to content

Download internal user cert

GET/smime/users/internal/certificate/{fingerprint}

Email Management API · SMIME

Download the PEM-encoded certificate of an internal user by fingerprint. In case the certificate was uploaded along with corresponding CA certificates, those CA certificates are also downloaded along with the user certificate.

Parameters

Name In Type Required Description
X-Tenant-ID header string (uuid) Yes Tenant ID.
fingerprint path string Yes SHA-256 fingerprint of the certificate. This is not case sensitive.
Must match the pattern ^[a-fA-F0-9]{64}$. Must be exactly 64 characters long.

Request samples

curl -X GET "https://api-<data-region>.central.sophos.com/email/v1/smime/users/internal/certificate/<fingerprint>" -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/smime/users/internal/certificate/<fingerprint>",
    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/smime/users/internal/certificate/<fingerprint>" -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/smime/users/internal/certificate/<fingerprint>", 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/smime/users/internal/certificate/<fingerprint>", {
  method: "GET",
  headers: {
    "Authorization": "Bearer <access-token>",
    "X-Tenant-ID": "<tenant-id>",
  },
});
const data = await response.json();
console.log(data);

Responses

200 — Certificate(s) downloaded successfully.

Errors

Status Meaning
400 Invalid request.
401 Authentication required.
403 Authorization required.
404 Resource not found.
500 Internal server error.
503 Server Unavailable.

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

Response examples

200

"string"

See the guide for a narrative walkthrough of this API.