PDF Search and Replace Text
Description: Search and replace text of your choice in a pdf file
Status Errors
Code | Description |
---|---|
200 | The request has succeeded |
400 | bad input parameters |
401 | unauthorized |
403 | not enough credits |
405 | Timeout error. To process large documents or files please use asynchronous mode ( set async parameter to true) and then check the status using /job/check endpoint. If a file contains many pages then specify a page range using pages parameter. The number of pages of the document can be obtained using the endpoint /pdf/info |
Example 1: single text replacement
GET
https://api.pdf.co/v1/pdf/edit/replace-text?url=https://bytescout-com.s3.amazonaws.com/files/demo-files/cloud-api/pdf-split/sample.pdf&searchString=conspicuous&replaceString=replaced&x-api-key=YOUR-API-KEY
or
POST
{
"url": "https://bytescout-com.s3.amazonaws.com/files/demo-files/cloud-api/pdf-split/sample.pdf",
"searchString": "conspicuous feature",
"replaceString": "Replaced1",
"caseSensitive": true,
"name": "finalFile"
}
or
cURL (uploading your file along with the request)
curl -F "x-api-key=PASTE_YOUR_API_KEY_HERE" -F "searchString=conspicuous feature" -F "replaceString=Replaced1" -F "file=@./sample.pdf" https://api.pdf.co/v1/pdf/edit/replace-text
Example 2: batch texts replacement
Sample Request:
! Don’t forget to set x-api-key
url param or http header param (preferred) to API key, get yours here
POST
{
"url": "https://bytescout-com.s3.amazonaws.com/files/demo-files/cloud-api/pdf-split/sample.pdf",
"searchStrings": [
"conspicuous feature",
"Martian"
],
"replaceStrings": [
"Replaced1",
"Replaced2"
],
"caseSensitive": true,
"name": "finalFile"
}
Available Methods
- [POST] /pdf/edit/replace-text (multiple replacements)
- [POST] /pdf/edit/replace-text (single replacement)
[POST] /pdf/edit/replace-text (multiple replacements)
url
required. URL to the source file. Supports links from Google Drive, Dropbox and from built-in PDF.co files storage. For uploading files via API please check Files Upload section. If you are randomly gettingToo Many Requests
orAccess Denied
error for your input url, please try to addcache:
to enable built-in url caching. You can also encrypt data for output files and decrypt data input files with user-controlled data encryption (uses strongAES
encryption with your own keys). Click here to learn more.httpusername
(optional) - http auth user name if required to access sourceurl
.httppassword
(optional) - http auth password if required to access sourceurl
.searchStrings[]
array of strings to search.replaceStrings[]
array of replacements strings.replacementLimit
. optional. Limit number of search & replacements for every item. default is-1
which means unlimited searches and replacements so every found occurrence will be replaced.caseSensitive
optional. Set tofalse
to use case-insensitive search.name
optional. File name for generated output. Must be a String.expiration
(optional). Output link expiration in minutes. Default is60
(i.e. 60 minutes or 1 hour). After this delay generated output file(s) (if any) will be auto-removed from PDF.co temporary files storage. Max allowed expiration period depends on your current subscription plan. To store permanent input files (e.g. re-usable images, pdf, documents), please use PDF.co built-in Files Storage instead.password
optional. Password of PDF file. Must be a String.pages
optional. Comma-separated list of page indices (or ranges) to process. IMPORTANT: the very first page starts at0
(zero). To set a range use the dash-
, for example:0,2-5,7-
. To set a range from index to the last page use range like this:2-
(from page #3 as the index starts at zero and till the end of the document). For ALL pages just leave this param empty. Example:0,2-5,7-
means first page, then 3rd page to 6th page, and then the range from 8th (index =7
) page till the end of the document. Must be a String.async
optional. Runs processing asynchronously. ReturnsJobId
that you may use with/job/check
to check the state of the processing (possible states:working
,failed
,aborted
andsuccess
). Must be one of:true
,false
.profiles
optional. Must be a String. Use this parameter to set additional configuration for fine tuning and extra options. Explore PDF.co knowledgebase for profile examples.- Method: POST
- URL: /v1/pdf/edit/replace-text
Query parameters
No query parameters accepted.
Body payload
{
"url": "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-to-text/sample.pdf",
"searchStrings": [
"Your Company Name",
"Client Name",
"Item"
],
"replaceStrings": [
"XYZ LLC",
"ACME",
"SKU"
],
"caseSensitive": true,
"replacementLimit": 1,
"pages": "",
"password":"",
"name": "finalFile",
"async": false
}
Example responses
/pdf/edit/replace-text (multiple replacements)
{
"url": "https://pdf-temp-files.s3.amazonaws.com/e79f0b9c82984740973ca670d7c93cad/finalFile.pdf",
"pageCount": 1,
"error": false,
"status": 200,
"name": "finalFile.pdf",
"remainingCredits": 99089875,
"credits": 21
}
Code Snippet
CURL
curl --location --request POST 'https://api.pdf.co/v1/pdf/edit/replace-text' \
--header 'Content-Type: application/json' \
--header 'x-api-key: ' \
--data-raw '{
"url": "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-to-text/sample.pdf",
"searchStrings": [
"Your Company Name",
"Client Name",
"Item"
],
"replaceStrings": [
"XYZ LLC",
"ACME",
"SKU"
],
"caseSensitive": true,
"replacementLimit": 1,
"pages": "",
"password":"",
"name": "finalFile",
"async": false
}'
[POST] /pdf/edit/replace-text (single replacement)
url
required. URL to the source file. Supports links from Google Drive, Dropbox and from built-in PDF.co files storage. For uploading files via API please check Files Upload section. If you are randomly gettingToo Many Requests
orAccess Denied
error for your input url, please try to addcache:
to enable built-in url caching. You can also encrypt data for output files and decrypt data input files with user-controlled data encryption (uses strongAES
encryption with your own keys). Click here to learn more.httpusername
(optional) - http auth user name if required to access sourceurl
.httppassword
(optional) - http auth password if required to access sourceurl
.searchString
required for single text replacement. Word or phrase to be replaced. Must be a String.replaceString
required for single text replacement. Word to be replaced with. Must be a String.caseSensitive
optional. Set tofalse
to use case-insensitive search.replacementLimit
. optional. Limit number of search & replacements for every item. default is-1
which means unlimited searches and replacements so every found occurrence will be replaced.name
optional. File name for generated output. Must be a String.expiration
(optional). Output link expiration in minutes. Default is60
(i.e. 60 minutes or 1 hour). After this delay generated output file(s) (if any) will be auto-removed from PDF.co temporary files storage. Max allowed expiration period depends on your current subscription plan. To store permanent input files (e.g. re-usable images, pdf, documents), please use PDF.co built-in Files Storage instead.password
optional. Password of PDF file. Must be a String.pages
optional. Comma-separated list of page indices (or ranges) to process. IMPORTANT: the very first page starts at0
(zero). To set a range use the dash-
, for example:0,2-5,7-
. To set a range from index to the last page use range like this:2-
(from page #3 as the index starts at zero and till the end of the document). For ALL pages just leave this param empty. Example:0,2-5,7-
means first page, then 3rd page to 6th page, and then the range from 8th (index =7
) page till the end of the document. Must be a String.async
optional. Runs processing asynchronously. ReturnsJobId
that you may use with/job/check
to check the state of the processing (possible states:working
,failed
,aborted
andsuccess
). Must be one of:true
,false
.profiles
optional. Must be a String. Use this parameter to set additional configuration for fine tuning and extra options. Explore PDF.co knowledgebase for profile examples.- Method: POST
- URL: /v1/pdf/edit/replace-text
Query parameters
No query parameters accepted.
Body payload
{
"url": "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-to-text/sample.pdf",
"searchString": "Your Company Name",
"replaceString": "XYZ LLC",
"caseSensitive": true,
"replacementLimit": 1,
"pages": "",
"password":"",
"name": "finalFile",
"async": false
}
Example responses
/pdf/edit/replace-text
{
"url": "https://pdf-temp-files.s3.amazonaws.com/1a0e9a51e2d04fe4bcce0a6a31c365a8/finalFile.pdf",
"pageCount": 4,
"error": false,
"status": 200,
"name": "finalFile",
"remainingCredits": 98310
}
Code Snippet
CURL
curl --location --request POST 'https://api.pdf.co/v1/pdf/edit/replace-text' \
--header 'x-api-key: ' \
--data-raw '{
"url": "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-to-text/sample.pdf",
"searchString": "Your Company Name",
"replaceString": "XYZ LLC",
"caseSensitive": true,
"replacementLimit": 1,
"pages": "",
"password":"",
"name": "finalFile",
"async": false
}'
Samples
- AWS Lambda - Replace Text From URL (Node.js)
- C# - Replace Text From URL
- C# - Replace Text From URL Asynchronously
- C# - Replace Text From Uploaded File
- Java - Replace Text From URL
- Java - Replace Text From Uploaded File
- JavaScript - Replace Text From URL (Node.js)
- JavaScript - Replace Text From URL (Node.js) - Async API
- JavaScript - Replace Text From Uploaded File (Node.js)
- JavaScript - Replace Text From Uploaded File (Node.js) - Async API
- PHP - Replace Text Asynchronously
- PHP - Replace Text From Uploaded File
- PowerShell - Replace Text From URL
- PowerShell - Replace Text From URL Asynchronously
- PowerShell - Replace Text From Uploaded File
- Python - Replace Text From URL
- Python - Replace Text From URL Asynchronously
- Python - Replace Text From Uploaded File
- Salesforce - Search and Replace Text
- VB.NET - Replace Text From URL
- VB.NET - Replace Text From URL Asynchronously
- VB.NET - Replace Text From Uploaded File
- cURL - Replace Text
- cURL - Replace Text Multiple Occurances
Copyright © 2016 - 2023 PDF.co