Loading
Loading
Add password protection to a PDF file by encrypting it with user and owner passwords.
The PDF Encrypt API secures your PDF files with password-based encryption. Set a user password to restrict opening, and an owner password for full access control. Passwords must be between 6 and 128 characters.
Pass your API key as the apiKey parameter in every request.
This is version v1.0 of the API.
The PDF Encrypt API accepts a file upload, query parameters, and webhook headers described below.
The request body is a single optional file upload sent as multipart/form-data. All other parameters (including file_id, user_password, and owner_password) are passed as query parameters, not in the request body.
{
"file": "/path/to/document.pdf"
}fileoptionalmultipart/form-dataThe PDF file to process.
All parameters must be included as query parameters. Any parameters sent in the form data will be ignored.
formatoptionalStringdefault: jsonResponse format: 'json' (default) or 'xml'.
user_passwordrequiredStringSet user password for the PDF file. Password must be between 6 and 128 characters.
owner_passwordoptionalStringSet owner password for the PDF file. If not provided, user password will also be used as owner password. Password must be between 6 and 128 characters.
file_passwordoptionalStringPassword to unlock the input file if it's protected. Either the owner or user password can be provided. The owner password takes precedence.
file_idoptionalStringThe unique ID of a file already present on our server. Use this instead of uploading the file again.
outputoptionalStringdefault: encrypted_outputName of the output PDF (without extension).
destroyoptionalBooleandefault: falseIf true, we delete the input file immediately after generating the output.
webhook_urloptionalStringThe URL where we'll send the webhook notification after the task completes. Authentication parameters in the URL (e.g., ?auth=token123) are passed as-is.
webhook_failure_notificationoptionalBooleandefault: falseIf true, we'll send an email notification if the webhook request fails after 3 retries. The email goes to the requesting user or their org admin if user is part of an organization.
Optional custom headers for webhook authorization.
X-Webhook-AuthorizationoptionalStringCustom authorization header sent with the webhook request. Format: Key:Value (e.g., Authorization:Bearer token123).
A successful request returns a 200 OK response with a JSON object containing the task ID and input file IDs.
taskIdUnique identifier for the PDF task, used to check status.
inputIdsArray of file IDs referencing input files used for the task. Not returned when destroy=true.
See the HTTP Status Codes documentation for a complete reference of common API errors and HTTP status codes.
Please provide a valid PDF file. Other file types are not supported.
Please provide either a file or a file ID.
Invalid parameter value provided for 'param_name'.
Please provide a user password for security operations.
Please provide a password for security operations.
Please provide a strong password. Refer to the documentation for password requirements.
Please provide a valid file ID.
These errors might appear in the task-status response if the background job fails.
The provided file is not a valid PDF file.
An unknown error occurred while saving the file. Try again later.
An unknown error occurred while generating the PDF. Try again later.
Internal Server Error Occurred.
The provided PDF file is encrypted. Please decrypt it first to perform operations.
Please provide the correct file password for security operations. Refer to documentation for valid password selection.
Please provide an owner password for security operations. You have provided a user password which is not valid for this operation.
An error occurred while creating the ZIP file. Please try again later.