curl --request POST \
--url https://api.aisa.one/apis/v1/pdf-co/pdf-security-add \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>"
}
'import requests
url = "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add"
payload = { "url": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>'})
};
fetch('https://api.aisa.one/apis/v1/pdf-co/pdf-security-add', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add"
payload := strings.NewReader("{\n \"url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/pdf-co/pdf-security-add")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/pdf-co/pdf-security-add")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"error": true,
"status": 123,
"url": "<string>",
"name": "<string>",
"credits": 123,
"duration": 123,
"pageCount": 123,
"remainingCredits": 123,
"outputLinkValidTill": "<string>"
}Add PDF Password and Security
curl --request POST \
--url https://api.aisa.one/apis/v1/pdf-co/pdf-security-add \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>"
}
'import requests
url = "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add"
payload = { "url": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({url: '<string>'})
};
fetch('https://api.aisa.one/apis/v1/pdf-co/pdf-security-add', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/pdf-co/pdf-security-add"
payload := strings.NewReader("{\n \"url\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/pdf-co/pdf-security-add")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/pdf-co/pdf-security-add")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"error": true,
"status": 123,
"url": "<string>",
"name": "<string>",
"credits": 123,
"duration": 123,
"pageCount": 123,
"remainingCredits": 123,
"outputLinkValidTill": "<string>"
}Request contract
- Method and path: POST /apis/v1/pdf-co/pdf-security-add
- Availability: enabled
- Request URL template:
https://api.aisa.one/apis/v1/pdf-co/pdf-security-add - Runtime facts: 2a3bd567205aeb00d10d4a6e8fbb280d098e3912e71bc16c07b9f91f82195a26
{
"operationId": "pdf-co.pdf-security-add",
"method": "POST",
"path": "/apis/v1/pdf-co/pdf-security-add",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [],
"security": [
{
"bearerAuth": []
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "URL of the source PDF file to secure."
},
"name": {
"type": "string",
"description": "File name for the generated PDF."
},
"profiles": {
"type": "object",
"description": "Advanced PDF.co profile settings.",
"additionalProperties": true
},
"expiration": {
"type": "integer",
"description": "Number of minutes before the temporary output link expires."
},
"printQuality": {
"enum": [
"LowResolution",
"HighResolution"
],
"type": "string",
"description": "Printing quality allowed for the secured PDF."
},
"userPassword": {
"type": "string",
"description": "Password required to view or print the PDF; this password alone cannot change document restrictions."
},
"ownerPassword": {
"type": "string",
"description": "Owner password used to encrypt the PDF and change document restrictions; it is required when modifying any allow* restriction."
},
"allowFillForms": {
"type": "boolean",
"description": "Whether to allow filling interactive form and signature fields; ownerPassword is required to modify this restriction."
},
"allowPrintDocument": {
"type": "boolean",
"description": "Whether to allow printing; ownerPassword is required to modify this restriction."
},
"allowModifyDocument": {
"type": "boolean",
"description": "Whether to allow document modification; ownerPassword is required to modify this restriction."
},
"encryptionAlgorithm": {
"enum": [
"RC4_40bit",
"RC4_128bit",
"AES_128bit",
"AES_256bit"
],
"type": "string",
"description": "Encryption algorithm for the secured PDF."
},
"allowAssemblyDocument": {
"type": "boolean",
"description": "Whether to allow document assembly; ownerPassword is required to modify this restriction."
},
"allowContentExtraction": {
"type": "boolean",
"description": "Whether to allow copying PDF content; ownerPassword is required to modify this restriction."
},
"allowModifyAnnotations": {
"type": "boolean",
"description": "Whether to allow interaction with annotations and forms; ownerPassword is required to modify this restriction."
},
"allowAccessibilitySupport": {
"type": "boolean",
"description": "Whether to allow content extraction for accessibility; ownerPassword is required to modify this restriction."
}
},
"additionalProperties": false
}
}
}
},
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "response_units",
"customer_multiplier": 1.0,
"customer_pricing": "provider_cost_multiplier",
"default_request_estimate_usd": 0.0103,
"estimate_source": "profile_seed",
"evidence_source": "response_body",
"maximum_units": 10000000,
"unit": "provider_credit",
"unit_rate_usd": 1e-06
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
Cost and request rules
Usage-based billing; Default request estimate: $0.0103 USD (not a fixed price). Declared unit rate: $0.000001 USD per provider_credit. Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.- Default request reference estimate (USD): 0.0103
- Declared unit rate (USD): 1e-06
- Billing unit: provider_credit
- Cost contract: response_units
- Published reference multiplier: 1.0
- Declared maximum count/units: 10000000
- Settlement evidence source: response_body
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
URL of the source PDF file to secure.
File name for the generated PDF.
Advanced PDF.co profile settings.
Number of minutes before the temporary output link expires.
Printing quality allowed for the secured PDF.
LowResolution, HighResolution Password required to view or print the PDF; this password alone cannot change document restrictions.
Owner password used to encrypt the PDF and change document restrictions; it is required when modifying any allow* restriction.
Whether to allow filling interactive form and signature fields; ownerPassword is required to modify this restriction.
Whether to allow printing; ownerPassword is required to modify this restriction.
Whether to allow document modification; ownerPassword is required to modify this restriction.
Encryption algorithm for the secured PDF.
RC4_40bit, RC4_128bit, AES_128bit, AES_256bit Whether to allow document assembly; ownerPassword is required to modify this restriction.
Whether to allow copying PDF content; ownerPassword is required to modify this restriction.
Whether to allow interaction with annotations and forms; ownerPassword is required to modify this restriction.
Whether to allow content extraction for accessibility; ownerPassword is required to modify this restriction.