<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "NotaryAPI",
  "identifier" : "/documentation/NotaryAPI",
  "metadataVersion" : "0.1.0",
  "role" : "Web Service",
  "symbol" : {
    "kind" : "Web Service",
    "modules" : [
      "Notary API"
    ],
    "preciseIdentifier" : "NotaryAPI"
  },
  "title" : "Notary API"
}
-->

# Notary API

Submit your macOS software for notarization through a web interface.

## Overview

Notarization gives people confidence that your Developer ID-signed macOS software has been checked by Apple for malicious code. In addition to interacting with the notary service through Xcode or the `notarytool` command-line utility, you can bypass `notarytool` and interact directly with the service through its REST API. The Notary API is helpful for instances where you need to avoid a macOS dependency when uploading your app to the notary service, and provides endpoints that enable you to:

- Prepare the notary service to receive a new version of your software, and get credentials that you use to upload your software to an Amazon S3 endpoint.
- Check the status of a submission.
- Retrieve a log file that provides details about a submission.
- Get a list of your team’s previous submissions.

To learn how notarization works, see <doc://com.apple.documentation/documentation/Security/notarizing-macos-software-before-distribution>. For details about using the notary service REST API to upload your software, see [Submitting software for notarization over the web](/documentation/NotaryAPI/submitting-software-for-notarization-over-the-web).

## Topics

### Essentials

[Submitting software for notarization over the web](/documentation/NotaryAPI/submitting-software-for-notarization-over-the-web)

Eliminate a dependency on macOS in your notarization workflow by interfacing directly with the notary service.

### Software submission

[`Submit Software`](/documentation/NotaryAPI/Submit-Software)

Start the process of uploading a new version of your software to the notary service.

[`NewSubmissionRequest`](/documentation/NotaryAPI/NewSubmissionRequest)

Data that you provide when starting a submission to the notary service.

[`NewSubmissionResponse`](/documentation/NotaryAPI/NewSubmissionResponse)

The notary service’s response to a software submission.

### Notarization results

[`Get Submission Status`](/documentation/NotaryAPI/Get-Submission-Status)

Fetch the status of a software notarization submission.

[`SubmissionResponse`](/documentation/NotaryAPI/SubmissionResponse)

The notary service’s response to a request for the status of a submission.

[`Get Submission Log`](/documentation/NotaryAPI/Get-Submission-Log)

Fetch details about a single completed notarization.

[`SubmissionLogURLResponse`](/documentation/NotaryAPI/SubmissionLogURLResponse)

The notary service’s response to a request for the log information about a completed submission.

### History

[`Get Previous Submissions`](/documentation/NotaryAPI/Get-Previous-Submissions)

Fetch a list of your team’s previous notarization submissions.

[`SubmissionListResponse`](/documentation/NotaryAPI/SubmissionListResponse)

The notary service’s response to a request for information about your team’s previous submissions.

### Errors

[`ErrorResponse`](/documentation/NotaryAPI/ErrorResponse)

The notary service’s response when an error occurs.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)