--- title: "PDF \u0026 Screenshot with HTML or URL as Input" url: https://docs.catalyst.zoho.com/en/api/code-reference/smartbrowz/generate-pdfnscreenshoturl/ description: "This API enables you to generate PDF & Screenshots for browser testing through the Catalyst SmartBrowz headless browser service." last_updated: 2026-08-28T06:26:16Z service: SmartBrowz type: api --- # PDF & Screenshot [PDF & Screenshot](https://docs.catalyst.zoho.com/en/smartbrowz/help/pdfnscreenshot/introduction/) is a component of SmartBrowz that lets you generate visual documents of websites and web applications. It is a powerful tool that can be used to convert webpages to PDF, to use during UI debugging, and to understand visual components from end-users’ perspective, while implementing permitted crawling operations, just to name a few. You can introduce this functionality in your Catalyst application using the API below. ## Generate PDF Using HTML/URL ### PDF Description You can use this API to generate PDF documents of webpages by using HTML code or URL as your input. ### PDF Request Details #### Request URL `POST` {api-domain}/browser360/v1/project/{project_id}/convert - **api-domain** (URL): The DC-specific domain to access Catalyst API - **project_id** (Numerical): The [unique ID](https://docs.catalyst.zoho.com/en/getting-started/set-up-a-catalyst-project/general-settings/) of the project #### Scope ZohoCatalyst.pdfshot.EXECUTE #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} **Content-Type:** application/json #### Request JSON Properties - **display_header_footer** (boolean, optional): Pass the value as `true` to show the header and footer of the webpage. Default: `false`. - **footer_template** (string, optional): HTML template for the print footer. Has the same constraints and support for special classes as `PDFOptions.headerTemplate`. - **format** (PaperFormat, optional): Size of the paper. Example: A4, A3. - **header_template** (string, optional): HTML template for the print header. Should be valid HTML with the following classes to inject values into them: - - **date** (string, optional): Formatted print date - - **title** (string, mandatory): Title of the document - - **url** (string, mandatory): URL of the document - - **page_number** (string, optional): Current page number - - **total_pages** (string, optional): Total pages in the document - **landscape** (boolean, optional): Pass the value as `true` to print in a landscape orientation - **margin** (PDFMargin, optional): Set the PDF margins - **omit_background** (boolean, optional): Hides the default white background and allows generating PDFs with a transparent background - **page_ranges** (string, optional): Paper ranges to print. Example: 1-5, 8, 11-13. - **prefer_css_pageSize** (boolean, optional): Pass the value as `true` to prioritize the CSS @page size declared in the page over what is declared in the width, height, or format option - **print_background** (boolean, optional): Pass the value as `true` to print the background graphics - **scale** (number, optional): Scales the rendering of the web page. Acceptable Values: Between 0.1 and 2. - **timeout** (number, optional): Timeout in milliseconds. Pass the value as `0` to disable the timeout. - **width** (string | number, optional): Sets the width of paper. You can pass in a number or a string with a unit. - **timeout** (number, optional): Maximum wait time in milliseconds. Pass the value as `0` to disable the timeout. The default value can be changed by using the `page.set_default_timeout()` or `page.set_default_navigation_timeout()` methods. - **wait_until** (string | number, optional): ### PDF Response Details The response will return the PDF document generated. ## Generate Screenshot Using HTML/URL ### Screenshot Description You can use this API to generate screenshots of webpages using HTML code or URL as your input. ### Screenshot Request Details #### Request URL `POST` {api-domain}/browser360/v1/project/{project_id}/convert - **project_id** (Numerical): The [unique ID](https://docs.catalyst.zoho.com/en/getting-started/set-up-a-catalyst-project/general-settings/) of the project #### Scope ZohoCatalyst.pdfshot.EXECUTE #### Request JSON Properties - **capture_beyond_viewport** (boolean, mandatory): Pass the value as `true` to capture the screenshot beyond the viewport - **clip** (screenshot_clip, mandatory): Object that specifies the clipping region of the page - **encoding** ('base64' | 'binary', mandatory): Encoding of the image - **from_surface** (boolean, mandatory): Pass the value as `true` to capture the screenshot from the surface rather than the view. - **full_page** (boolean, mandatory): Pass the value as `true` to take a screenshot of the entire page - **omit_background** (boolean, mandatory): Hides the default white background and allows capturing screenshots with a transparent background - **quality** (number, optional): Quality of the image. Not applicable to **.png** images. Acceptable Values: Between `0` to `100`. Maximum wait time in milliseconds. Pass the value as `0` to disable the timeout. - **wait_until** (string | number, optional): - **password** (string, optional): Will hold the value of the password that protects your PDF document. ### Screenshot Response Details The response will return a screenshot that was generated. > **Note:** Any Browser action or operation that you code using the Browser Logic function, or any browser automation or web scraping task that you perform using any component of **Catalyst SmartBrowz** is at your own risk. We strongly recommend you use the SmartBrowz components to perform operations on domains that permit the actions, or with proper approval. Additionally, while Catalyst does provide a secure infrastructure to code your functions, any consequence of the logic you code using Catalyst functions is yours alone. **CURL Request - PDF from HTML/URL** ```json curl -X POST \ 'https://api.catalyst.zoho.com/browser360/v1/project/10470000000272001/convert' -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H 'Content-Type: application/json' --d '{ "url": "https://www.example.com", "output_options": { "output_type": "pdf" }, "pdf_options" : { "scale" : 1, "display_header_footer" : true, "header_template" : "<style> #header, #footer { margin: 0 !important; padding: 0 !important; font-size: 9px; -webkit-print-color-adjust: exact;}</style><div style=\width:100%><span class=\date\></span><span class=\title\ style=\float:right\></span</div>", "footer_template" : "<style> #header, #footer { margin: 0 !important; padding: 0 !important; font-size: 9px; -webkit-print-color-adjust: exact;}</style><div style=\width:100%\><span class=\url\></span><div style=\float:right\><span class=\pageNumber\></span> / <span class=\totalPages\></span></div></div>", "print_background" : false, "landscape" : false, "page_ranges" : "1", "format" : "A4", "width" : "100", "height" : "100", "margin" : { "top" : "1cm", "bottom" : "1cm", "left" : "1cm", "right": "1cm" }, "omit_background" : false }, "page_options":{ "css" : { "content" : "body{background: lightgrey}" }, "viewport" : { "width": 1440, "height": 900 }, "javascript_enabled" : true }, "navigation_options":{ "timeout" : 5000, "wait_until" : "networkidle0" } }' ``` **CURL Request - Screenshot from HTML/URL** ```json curl -X POST \ 'https://api.catalyst.zoho.com/browser360/v1/project/10470000000272001/convert' -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H 'Content-Type: application/json' --d'{ "url": "https://www.example.com", "output_options": { "output_type": "screenshot" }, "screenshot_options": { "type": "jpeg", "quality": 100, "full_page": false, "omit_background": false, "capture_beyond_viewport": true, "clip": { "x": 50, "y": 100, "width": 1000, "height": 100 } }, "page_options": { "css": { "content": "body{background: lightgrey}" }, "viewport": { "width": 1440, "height": 900 }, "javascript_enabled": true }, "navigation_options": { "timeout": 5000, "wait_until": "networkidle0" } }' ``` ### SDK Documentation [Generate PDF & Screenshot- Java SDK](https://docs.catalyst.zoho.com/en/sdk/java/v1/smartbrowz/generate-pdfnscreenshot/) [Generate PDF & Screenshot- Node.js SDK](https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/smartbrowz/generate-pdfnscreenshot/) [Generate PDF & Screenshot- Python SDK](https://docs.catalyst.zoho.com/en/sdk/python/v1/smartbrowz/generate-pdfnscreenshot/)