Remove the password from a PDF document
Use this action to remove the password from an encrypted PDF document. The PDF document will no longer require a password to open.
Endpoints
POST
https://api.pdfblocks.com/v1/remove_password
Global endpoint (default)
POST
https://eu.api.pdfblocks.com/v1/remove_password
European-only endpoint
Parameters
The endpoint accepts multipart/form-data
request bodies with the folowing parameters:
file
Required
The content of the input PDF document.
password
Required
The password required to open the file.
Returns
If successful, the call returns a response with Content-Type: application/pdf
with the content of the unencrypted PDF document. Otherwise, this call returns an error .
Code examples
curl
curl \
-F file = @encrypted_input.pdf \
-F password = 'correct horse' \
-o decrypted.pdf \
-H 'X-Api-Key: your_api_key' \
https://api.pdfblocks.com/v1/remove_password
Python
# pip install requests
import requests
url = 'https://api.pdfblocks.com/v1/remove_password'
body = {
'file' : open ( 'input.pdf' , 'rb' ),
'password' : 'correct horse'
}
headers = { 'X-Api-Key' : 'your_api_key' }
response = requests . post ( url , files = body , headers = headers )
if response . status_code == 200 :
with open ( 'unencrypted.pdf' , 'wb' ) as output :
for chunk in response . iter_content ():
output . write ( chunk )
Ruby
# gem install http
require 'http'
url = 'https://api.pdfblocks.com/v1/remove_password'
body = {
file: HTTP :: FormData :: File . new ( 'input.pdf' ),
password: 'correct horse'
}
headers = { 'X-Api-Key' => 'your_api_key' }
response = HTTP . post ( url , form: body , headers: headers )
if response . status . ok?
File . open ( 'unencrypted.pdf' , 'wb' ) do | output |
response . body . each { | chunk | output . write ( chunk ) }
end
end
C# (.NET Core)
// Using .NET Core 3.1
using System.IO ;
using System.Net.Http ;
class Program
{
static void Main ()
{
string url = "https://api.pdfblocks.com/v1/remove_password" ;
var inputFile = new FileStream ( "input.pdf" , FileMode . Open , FileAccess . Read );
var body = new MultipartFormDataContent ();
body . Add ( new StreamContent ( inputFile ), "file" );
body . Add ( new StringContent ( "correct horse" ), "password" );
var message = new HttpRequestMessage ( HttpMethod . Post , url );
message . Content = body ;
message . Headers . Add ( "X-Api-Key" , "your_api_key" );
var client = new HttpClient ();
var response = client . SendAsync ( message ). Result ;
if ( response . IsSuccessStatusCode )
{
using var output = new FileStream ( "unencrypted.pdf" , FileMode . Create , FileAccess . Write );
response . Content . CopyToAsync ( output ). Wait ();
}
}
}