
Input
| Name | Description | Required |
|---|---|---|
| PDF Source Link | Provide the URL to the source PDF document, or a filetoken:// link from PDF.co Built-In Files Storage. If you use another cloud service such as Google Drive or Dropbox ensure the link is publicly accessible. | Yes |
| Search Query | Specify the text you want to search for within the PDF document. | Yes |
| Enable Regular Expressions | Activate this option to use regular expressions for more complex search patterns. Example: [0-9]{3}-[0-9]{2}-[0-9]{4} to locate an SSN. | No |
| Page Range | Indicate the page range for the search. Use a comma-separated list of page numbers or ranges. The first page starts at 1. Example: 1,2-5,7-. | No |
| Simplify Output | Enable this for a consolidated output in a single list, which facilitates easier data reuse. | No |
| Custom Profiles | A JSON string which adds options for the conversion process. See Custom Profiles for more. | No |
Source PDF URL & Google
When using Google Drive, it’s typically recommended to choose the File option. For more advanced file integration techniques, see Integrating File Sources with pdf.co.

Output
| Name | Description |
|---|---|
url | The temporary URL on the PDF.co file server. |
body | An object array containing the search results. This is visible only if the Simplified Object property is set to False. |
match1 | An object that includes a single search result. Visible when the Simplified Object property is set to True. |
match2 | An object holding another search result, following the same pattern as match1 for each output file. |
outputLinkValidTill | A timestamp which indicates how long the url will be available for. |
error | Details of any errors (if any). |
status | The response status code. If all good this will be 200. |
jobId | The unique identifier for the job. |
credits | The credits spent on the process. |
remainingCredits | The credits left on your account. |
duration | The time it took for the process. |
Custom profiles
Use Custom Profiles to enhance your workflow with additional processing options. EnterJSON configuration to customize OCR settings, output format, text extraction methods, and more.

Sample JSON
| Parameter | Type | Default | Description |
|---|---|---|---|
ColumnDetectionMode | string | Content Groups And Borders | Controls column detection/alignment in PDF table extraction. Refer to Column Detection Mode for more information. |
DetectionMinNumberOfRows | integer | 1 | Minimum number of rows to detect in a table |
DetectionMinNumberOfColumns | integer | 1 | Minimum number of columns to detect in a table |
DetectionMaxNumberOfInvalidSubsequentRowsAllowed | integer | 0 | Maximum number of invalid subsequent rows allowed in a table |
DetectionMinNumberOfLineBreaksBetweenTables | integer | 0 | Minimum number of line breaks between tables |
EnhanceTableBorders | boolean | true | Enhance table borders or not |
OCRDetectPageRotation | boolean | false | Controls whether to detect page rotation in the PDF document when OCR applied. Set to true to detect page rotation. See Support page rotation for more information. |
DataEncryptionAlgorithm | string | - | Controls the encryption algorithm used for data encryption. See User-Controlled Encryption for more information. The available algorithms are: AES128, AES192, AES256. |
DataEncryptionKey | string | - | Controls the encryption key used for data encryption. See User-Controlled Encryption for more information. |
DataEncryptionIV | string | - | Controls the encryption IV used for data encryption. See User-Controlled Encryption for more information. |
DataDecryptionAlgorithm | string | - | Controls the decryption algorithm used for data decryption. See User-Controlled Encryption for more information. The available algorithms are: AES128, AES192, AES256. |
DataDecryptionKey | string | - | Controls the decryption key used for data decryption. See User-Controlled Encryption for more information. |
DataDecryptionIV | string | - | Controls the decryption IV used for data decryption. See User-Controlled Encryption for more information. |
requestParametersDocument | string | - | |
responseParameters | object |
Column Detection Mode
This might be case when a document contains a number of overlapping invisible text and vector objects that affect column detection. In this case you may need to fix the wrongly positioned data. Set the options for your column detection via the followingprofiles parameters:
ColumnDetectionMode - available values:
ContentGroupsAndBorders(default, no need to specify)ContentGroupsBordersBorderedTablesContentGroupsAI