> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pdf.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Search Text

> Integrate this step into your Zapier workflow to search for specific text within PDF documents or scanned images, including support for regular expressions.

<Frame>
  <img src="https://mintcdn.com/pdfco/N4Le3Ib-q2JX4RLs/images/integrations/zapier/zapier-step25.png?fit=max&auto=format&n=N4Le3Ib-q2JX4RLs&q=85&s=b4f294181e3054bb8b3c3e6b9d7201f7" alt="Zapier Step" width="2217" height="1910" data-path="images/integrations/zapier/zapier-step25.png" />
</Frame>

## 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](https://app.pdf.co/files). 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](#custom-profiles) for more.                                                                                                                                      | No       |

### Source PDF URL & Google

<Note>
  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](/integrations/zapier/input-file-sources).

  <Frame>
    <img src="https://mintcdn.com/pdfco/tXGo3rbTS_pEF5es/images/integrations/zapier/zapier-google-input-source.png?fit=max&auto=format&n=tXGo3rbTS_pEF5es&q=85&s=8e304dac8851d0b17c9500f25c2d41c8" alt="Google File" width="819" height="102" data-path="images/integrations/zapier/zapier-google-input-source.png" />
  </Frame>
</Note>

## 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](/api-reference/introduction) 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](/api-reference/profiles) to enhance your workflow with additional processing options. Enter `JSON` configuration to customize OCR settings, output format, text extraction methods, and more.

<Frame>
  <img src="https://mintcdn.com/pdfco/tXGo3rbTS_pEF5es/images/integrations/zapier/custom-profiles.png?fit=max&auto=format&n=tXGo3rbTS_pEF5es&q=85&s=3a96b0395b56c9977724ee05327aa571" alt="Custom Profiles" width="843" height="111" data-path="images/integrations/zapier/custom-profiles.png" />
</Frame>

### Sample JSON

```json theme={null}
{ "ImageOptimizationFormat": "JPEG", "JPEGQuality": 25, "ResampleImages": true, "ResamplingResolution": 120, "GrayscaleImages": true }
```

<Tip>
  You can use any regular API parameter from the [API Reference](/api-reference) within Zapier using the `std_params` feature in profiles. The `std_params` enables the definition of regular API parameters in a JSON format, See [Standard Parameters](/api-reference/profiles#standard-parameters) for detailed documentation and examples.
</Tip>

| Parameter                                          | Type    | Default                    | Description                                                                                                                                                            |
| -------------------------------------------------- | ------- | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ColumnDetectionMode`                              | string  | Content Groups And Borders | Controls column detection/alignment in PDF table extraction. Refer to [Column Detection Mode](#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 following `profiles` parameters:

`ColumnDetectionMode` - available values:

* `ContentGroupsAndBorders` (default, no need to specify)
* `ContentGroups`
* `Borders`
* `BorderedTables`
* `ContentGroupsAI`

```json theme={null}
{
 "profiles": "{ 'ColumnDetectionMode': 'ContentGroups' }"
}
```
