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

# PDF Page Tools

> Enhance your Zapier workflow by integrating this step for functionalities like rotating and deleting pages from a PDF document.

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

## Input

<Tip>
  The Zapier action doesn't expose every PDF.co API parameter as a field. To pass a parameter that isn't shown, use the **Custom Profiles** field with `std_params`. See [Standard Parameters](/api/profiles#standard-parameters).
</Tip>

| Name | Description | Required |
| - | - | - |
| **PDF Source Link** | Provide a URL to the PDF file or a `filetoken://` link from [PDF.co Built-In Files Storage](https://app.pdf.co/files). For cloud services like Google Drive or Dropbox, ensure the link is publicly accessible. | Yes |
| **Mode** | Select the operation mode: rotate pages or delete pages. | No |
| **Rotation Angle** | Define the rotation angle in degrees for the `Rotate Pages` mode. AI-based auto-rotation based on text analysis is also available. | No |
| **OCR Language for auto-rotate** | Choose the OCR language for text recognition in scanned PDFs, primarily for auto-rotation. Default is English. | No |
| **Page Numbers** | Indicate the pages to process. Use comma-separated page numbers or ranges. Note: For `Rotate Pages` mode, the first page is `0`; for `Delete Pages`, it starts from `1`. Example: `1,2-5,7-`. | 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. |
| `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/introduction) code. If all good this will be `200`. |
| `name` | The name of the file. |
| `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/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) 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/profiles#standard-parameters) for detailed documentation and examples.
</Tip>

| Parameter | Type | Default | Description |
| - | - | - | - |
| `outputDataFormat` | string | - | If you require your output as base64 format, set this to base64 |
| `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. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.