Command-line usage
Conversion Input
SOURCE
Supply exactly one input source:
- URL: an HTTP(S) URL.
- File: the path to an existing local input file.
- Standard input:
-reads input bytes from a pipe or redirection. - HTML string: pipe HTML content to
-; a literal HTML string is not a positional source argument.
Options may appear before or between sources. Use -- before a file name that starts with a dash.
- Examples:
-
-
URL:
html2image --output result.png https://example.com -
Local file:
html2image --output result.png input.html -
Standard input:
html2image --output result.png - < input.html -
HTML string:
printf '%s' '<h1>Hello</h1>' | html2image --output result.png -
-
URL:
--zip-main-filename
Set the file name of the main HTML document stored in the input archive. Use this when your ZIP/TAR archive contains multiple HTML files and you need to specify which one to convert.
If not specified, the first HTML file found in the archive is automatically used for conversion.
- Syntax:
--zip-main-filename FILENAME
Output
Each conversion produces one image in the selected output format.
Results go to stdout by default. Use --output,
a pipe, or shell redirection; html2image refuses
to write the result directly to an interactive terminal. Diagnostics and requested conversion information go to stderr.
--output, -o FILE
Save the result to FILE. Use - for standard output.
An existing output file is replaced only after a successful conversion.
To send binary results to standard output, redirect them to a file or pipe them to another program.
- Default:
standard output- Example:
-
-
html2image --output FILE SOURCE
-
--print-debug-log-url
Print debug log url to stderr after conversion.
--print-remaining-credit-count
Print remaining credit count to stderr after conversion.
--print-consumed-credit-count
Print consumed credit count to stderr after conversion.
--print-job-id
Print job id to stderr after conversion.
--print-output-size
Print output size to stderr after conversion.
--print-version
Print the converter version to stderr after conversion.
Errors and exit codes
The command returns a process exit code indicating its outcome:
| Exit code | Meaning |
|---|---|
0 | Success. |
1 | The program reading the output pipe closed it. |
2 | Invalid arguments, conversion settings, or configuration file. |
3 | Authentication failed. |
4 | Conversion, file access, or installation failed. |
130 | Interrupted with Ctrl-C. |
Service errors are written to stderr with the prefix PDFCrowd Error:
and include the API status code, reason code, message, and documentation link
when available. These service codes differ from the process exit codes above;
see API status and reason codes.
Configuration
If the default configuration file exists, conversions read it automatically. Conversions never save settings automatically. Run html2image help configuration to see the default file path. --config and --no-config are mutually exclusive.
Use a UTF-8 INI file with option-name = value lines and no
[section] headings. Use the option names with hyphens and without
leading dashes, for example debug-log instead of
--debug-log. Lines starting with # or ;
are comments.
For large HTML, CSS, or JavaScript values, keep the content in a separate UTF-8
file and use @{PATH} as the setting's value. The CLI reads the file's
content without changing its whitespace or line breaks. Relative paths in an
INI file are resolved from the config file's directory. On the command line,
they are resolved from the current working directory. Do not put quotes around
@{PATH} in the INI file; quote it when passing it on the command line.
Inline values can span multiple lines when each continuation line is indented more than the setting name. A blank line ends the value. Use a separate file for content that needs blank lines or exact formatting.
--config PATH
Read conversion defaults from PATH instead of the default file.
Command-line options override the settings in this file. This option applies to conversion settings; credentials are stored separately.
- Examples:
-
-
html2image --config PATH --output FILE SOURCE -
html2image --config ./defaults.ini -o result SOURCE
-
--no-config
Ignore saved conversion defaults for this command.
Command-line conversion options still apply. Saved credentials and environment variables still apply. The config file is left unchanged.
- Example:
-
-
html2image --no-config --output FILE SOURCE
-
--init-config
Create a commented config file that you can edit.
Open the created file and remove the leading # from settings you want to use. Future conversions read the default file automatically.
Use --config PATH to create a file at another location. An existing file is left unchanged. This command does not perform a conversion.
- Examples:
-
-
html2image --init-config [--config PATH] -
html2image --init-config -
html2image --init-config --config ./defaults.ini
-
--show-config
Show saved defaults and command-line overrides without converting.
Each setting shows whether it came from the config file or the command line. Other options use their API defaults.
Sensitive values and inline HTML, CSS, and JavaScript are hidden. No files are changed.
- Examples:
-
-
html2image --show-config [options] -
html2image --show-config -
html2image --no-config --show-config
-
Authentication
For account setup and credential selection, see Authentication.
auth ACTION
Manage credentials shared by all converter commands.
ACTION: Choose login, status, or logout.
- Usage:
-
html2image auth ACTION
pdfcrowd auth ACTION
auth login [--non-interactive]
Save your PDFCrowd username and API key for all converter commands.
Use both credential environment variables when set; otherwise prompt in an interactive terminal. The API-key prompt hides your input.
In a script, use --non-interactive to require environment credentials without prompting. This saves the account; it does not perform a conversion.
- Usage:
-
html2image auth login [--non-interactive]
pdfcrowd auth login [--non-interactive]
auth login --non-interactive
This option applies only to auth login.
Require environment credentials when saving an account with auth login; never prompt.
Set both PDFCROWD_USERNAME and PDFCROWD_API_KEY before running this command. The account is saved for all converters. Missing credentials cause an error.
- Example:
-
-
html2image auth login --non-interactive
-
auth status
Show which credentials will be used without revealing the API key.
This reads local settings; it does not verify the account with PDFCrowd.
- Usage:
-
html2image auth status
pdfcrowd auth status
auth logout
Remove the saved account for all converter commands.
Credential environment variables still apply when set.
- Usage:
-
html2image auth logout
pdfcrowd auth logout
Help and Version
help [TOPIC|OPTION|CATEGORY]
Show offline help for this converter.
Help does not load saved settings or credentials and does not contact the service.
TOPIC|OPTION|CATEGORY: Omit the argument for an overview. Supply one topic, option name (with or without --), or conversion category ID.
all: List every option.categories: List help topics and conversion option groups.syntax: Explain how to supply arguments.configuration: Save and load conversion defaults.authentication: Set up your PDFCrowd account.input-output: Read inputs and save results.exit-codes: Check whether a command succeeded.
- Usage:
-
html2image help [TOPIC|OPTION|CATEGORY]
pdfcrowd help html2image [TOPIC|OPTION|CATEGORY] - Examples:
-
-
html2image help all -
html2image help categories -
html2image help --output
-
help --json
This option applies only to help.
Print help as JSON for scripts, integrations, and AI agents.
Includes option names, argument types, defaults, allowed values, authentication rules, and exit codes. Works offline.
- Example:
-
-
html2image help --json
-
--help, -h
Show a summary of commands and options.
Use help all for every option, or help OPTION for details.
- Example:
-
-
html2image --help
-
--version, -V
Show the PDFCrowd CLI version.
- Example:
-
-
html2image --version
-
Conversion options
Conversion Format
--output-format
The output file format.
- Syntax:
--output-format OUTPUT_FORMAT- Default:
png- Allowed Values:
-
-
png -
jpg -
gif -
tiff -
bmp -
ico -
ppm -
pgm -
pbm -
pnm -
psb -
pct -
ras -
tga -
sgi -
sun -
webp
-
Image Output
--screenshot-width
Set the output image width in pixels.
- Syntax:
--screenshot-width WIDTH- Constraint:
-
- The accepted range is 96-65000.
- Default:
1024- Example:
-
-
Full HD width:
1920
-
Full HD width:
--screenshot-height
Set the output image height in pixels. If it is not specified, actual document height is used.
- Syntax:
--screenshot-height HEIGHT- Constraint:
-
- Must be a positive integer.
- Example:
-
-
Full HD height:
1080
-
Full HD height:
--scale-factor
Set the scaling factor (zoom) for the output image.
- Syntax:
--scale-factor FACTOR- Constraint:
-
- Must be a positive integer.
- Default:
100- Example:
-
-
Reduce image for thumbnails:
50
-
Reduce image for thumbnails:
--background-color
The output image background color in RGB or RGBA hex format. Use transparent (00000000) for PNG overlays or solid colors for web display.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--background-color COLOR- Constraint:
-
- The value must be in RRGGBB or RRGGBBAA hexadecimal format.
- Examples:
-
-
red color:
"FF0000" -
fully transparent background:
"00000000" -
green color with 50% opacity:
"00ff0080" -
green color:
"00ff00"
-
red color:
General Options
--use-print-media
Use the print version of the page if available via @media print CSS rules. Enable this when converting websites that have print-optimized styles. Many sites hide navigation, ads, and sidebars in print mode.
Produces cleaner PDFs by using the design the website creator intended for printing.
- Syntax:
--use-print-media[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--no-background
Do not print the background graphics to create printer-friendly PDFs. Use this when documents will be physically printed to save ink costs and improve readability.
Removes background colors, images, and patterns while preserving text and foreground content. Particularly useful for documents with dark backgrounds or decorative elements.
- Syntax:
--no-background[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--disable-javascript
Do not execute JavaScript during conversion. Use this to improve conversion speed when JavaScript is not needed, prevent dynamic content changes, or avoid security risks from untrusted scripts.
Note that disabling JavaScript means lazy-loaded images and AJAX content will not load.
- Syntax:
--disable-javascript[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--disable-image-loading
Do not load images during conversion to create text-only PDFs. Use this to significantly speed up conversion, reduce file size, or create accessible text-focused documents.
Use this for converting documentation where images are not needed, reducing bandwidth usage, or creating lightweight PDFs for email distribution.
- Syntax:
--disable-image-loading[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--disable-remote-fonts
Disable loading fonts from remote sources. Use this to speed up conversion by avoiding font download delays, ensure consistent rendering with system fonts, or work around font loading failures.
Note that text will fall back to system fonts, which may change the document's appearance.
- Syntax:
--disable-remote-fonts[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--load-iframes
Specifies how iframes are handled during conversion. Use "all" to include all embedded content (videos, maps, widgets). Use "same-origin" to include only content from the same domain for security purposes. Use "none" to exclude all iframes for faster conversion and to avoid third-party content issues.
Disabling iframes can significantly improve performance and reliability.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--load-iframes IFRAMES- Default:
all- Allowed Values:
-
-
all— All iframes are loaded. -
same-origin— Only iframes with the same origin as the main page are loaded. -
none— Iframe loading is disabled.
-
--block-ads
Automatically block common advertising networks and tracking scripts during conversion, producing cleaner PDFs with faster conversion times. Filters out third-party ad content, analytics beacons, and ad network resources.
Use this for converting news sites, blogs, or any ad-heavy content where ads distract from the main message. May occasionally block legitimate third-party content - disable if critical third-party resources are missing.
- Syntax:
--block-ads[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--default-encoding
Specify the character encoding when the HTML lacks proper charset declaration or has incorrect encoding. Prevents garbled text for non-English content, especially legacy pages without UTF-8 encoding.
Set to "utf-8" for modern content, "iso-8859-1" for Western European legacy pages, or other encodings for specific regional content. Only needed when auto-detection fails and you see corrupted characters in the output.
- Syntax:
--default-encoding ENCODING- Default:
auto detect- Examples:
-
-
Set to use Latin-2 encoding:
"iso8859-2" -
Set to use UTF-8 encoding:
"utf-8"
-
Set to use Latin-2 encoding:
--locale
Set the locale for the conversion to control regional formatting of dates, times, and numbers. Use this when converting content for specific regions - for example, set to "en-US" for MM/DD/YYYY dates and comma thousand separators, or "de-DE" for DD.MM.YYYY dates and period thousand separators.
Essential for financial reports, invoices, or localized content.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--locale LOCALE- Default:
en-US- Example:
-
-
Set to use Japanese locale:
"ja-JP"
-
Set to use Japanese locale:
--http-auth
Set credentials to access HTTP basic authentication protected websites. Use this when converting content behind HTTP authentication, such as development servers, staging environments, or password-protected documentation.
Provide both username and password to authenticate requests. Essential for converting internal resources or protected content.
- Syntax:
--http-auth USER_NAME PASSWORD
--verify-ssl-certificates
Enforce SSL certificate validation for secure connections, preventing conversions from sites with invalid certificates. Enable when converting from production sites with valid certificates to ensure security.
When disabled, allows conversion from any HTTPS site regardless of certificate validity - including development servers with self-signed certificates, internal corporate sites with expired certificates, or local testing environments.
- Syntax:
--verify-ssl-certificates[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--fail-on-main-url-error
Abort the conversion if the HTTP status code of the main URL is greater than or equal to 400 (client/server errors). Use this in automated workflows to catch broken URLs or authentication failures early rather than producing invalid PDFs. Ensures your system does not silently generate error page PDFs when source content is unavailable.
- Syntax:
--fail-on-main-url-error[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--fail-on-any-url-error
Abort the conversion if any sub-request (images, stylesheets, scripts) fails with HTTP 400+ errors. Use this for strict quality control when all assets must load successfully.
- Syntax:
--fail-on-any-url-error[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--no-xpdfcrowd-header
Do not send the X-Pdfcrowd HTTP header in HTTP requests made by the converter. Use this if your target server blocks or logs requests with this header, or for privacy when you do not want sites to know you are using PDFCrowd. Some security systems may block requests with non-standard headers.
- Syntax:
--no-xpdfcrowd-header[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--custom-css
Apply custom CSS to the input HTML document to modify the visual appearance and layout of your content dynamically. Use this to override default styles, adjust spacing, change fonts, or fix layout issues without modifying the source HTML.
Use !important in your CSS rules to prioritize and override conflicting styles.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--custom-css CSS- Text from a file:
- Use
@{PATH}as the value to read UTF-8 text from a file. Relative paths in a config file are resolved from that file's directory; command-line paths are resolved from the current working directory. See Configuration for details. - Examples:
-
-
Set the page background color to gray:
"body { background-color: gray; }" -
Do not show
navHTML elements and the element withad-blockID in the output PDF:"nav, #ad-block { display: none !important; }"
-
Set the page background color to gray:
--custom-javascript
Run a custom JavaScript after the document is loaded and ready to print. Use this to modify page content before conversion, remove unwanted elements, or trigger specific page states. The script is intended for post-load DOM manipulation (add/remove elements, update CSS, ...).
In addition to the standard browser APIs, the custom JavaScript code can use helper functions from our JavaScript library.
- Syntax:
--custom-javascript JAVASCRIPT- Text from a file:
- Use
@{PATH}as the value to read UTF-8 text from a file. Relative paths in a config file are resolved from that file's directory; command-line paths are resolved from the current working directory. See Configuration for details. - Example:
-
-
Set the page background color to gray:
"document.body.style.setProperty('background-color', 'gray', 'important')"
-
Set the page background color to gray:
--on-load-javascript
Run a custom JavaScript right after the document is loaded. The script is intended for early DOM manipulation (add/remove elements, update CSS, ...). In addition to the standard browser APIs, the custom JavaScript code can use helper functions from our JavaScript library.
- Syntax:
--on-load-javascript JAVASCRIPT- Example:
-
-
Set the page background color to gray:
"document.body.style.setProperty('background-color', 'gray', 'important')"
-
Set the page background color to gray:
--custom-http-header
Set a custom HTTP header to be included in all requests made by the converter. Use this to pass authentication tokens to protected sites, add tracking headers for analytics, or provide API keys for accessing private content.
Essential when converting content from APIs or internal systems that require special headers for access control.
- Syntax:
--custom-http-header HEADER- Constraint:
-
- A string containing the header name and value separated by a colon.
- Example:
-
-
API client tracking header:
"X-My-Client-ID:k2017-12345"
-
API client tracking header:
--javascript-delay
Wait the specified number of milliseconds to finish all JavaScript after the document is loaded. Use this to ensure lazy-loaded images, AJAX content, or animations complete before conversion. Your license defines the maximum wait time by "Max Delay" parameter.
- Syntax:
--javascript-delay DELAY- Constraint:
-
- Must be a positive integer or 0.
- Default:
200- Example:
-
-
Wait for 2 seconds:
2000
-
Wait for 2 seconds:
--element-to-convert
Convert only the specified element from the main document and its children. Use this to extract specific portions of a page (like article content) while excluding navigation, headers, footers, or sidebars. The element is specified by one or more CSS selectors. If the element is not found, the conversion fails. If multiple elements are found, the first one is used.
- Syntax:
--element-to-convert SELECTORS- Examples:
-
-
The first element with the id
main-contentis converted:"#main-content" -
The first element with the class name
main-contentis converted:".main-content" -
The first element with the tag name
tableis converted:"table" -
The first element with the tag name
tableor with the idmain-contentis converted:"table, #main-content" -
The first element
<p class="article">within<div class="user-panel main">is converted:"div.user-panel.main p.article"
-
The first element with the id
--element-to-convert-mode
Control how CSS styles are applied when converting only part of a page. The "cut-out" option extracts the element into a new document root, which may break CSS selectors like "body > div". The "remove-siblings" option keeps the element in its original DOM position but deletes other elements, preserving descendant selectors. The "hide-siblings" option keeps all elements but hides non-selected ones with display:none, preserving all CSS context.
- Syntax:
--element-to-convert-mode MODE- Default:
cut-out- Allowed Values:
-
-
cut-out— The element and its children are cut out of the document. -
remove-siblings— All element's siblings are removed from the DOM. Keeps target element in position but may break descendant CSS selectors. -
hide-siblings— All element's siblings are hidden using display:none. Preserves CSS context while hiding non-target content.
-
--wait-for-element
Wait for the specified element in a source document. Use this when specific dynamic content must be ready before conversion, avoiding unnecessary delays from a fixed JavaScript delay. The element is specified by one or more CSS selectors. The element is searched for in the main document and all iframes.
If the element is not found, the conversion fails. Your license defines the maximum wait time by the "Max Delay" parameter.
- Syntax:
--wait-for-element SELECTORS- Examples:
-
-
Wait until an element with the id
main-contentis found:"#main-content" -
Wait until an element with the class name
main-contentis found:".main-content" -
Wait until an element with the tag name
tableis found:"table" -
Wait until an element with the tag name
tableor with the idmain-contentis found:"table, #main-content" -
Wait until
<p class="article">is found within<div class="user-panel main">:"div.user-panel.main p.article"
-
Wait until an element with the id
--auto-detect-element-to-convert
The main HTML element for conversion is detected automatically. Use this when you want to extract article or main content without knowing the exact CSS selector, automatically excluding navigation and sidebars.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--auto-detect-element-to-convert[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--readability-enhancements
Automatically enhance the input HTML to improve readability by removing clutter and reformatting content. Use this when converting web pages with excessive navigation, ads, or sidebars that distract from the main content.
Different versions (v1-v4) use progressively aggressive algorithms - start with "v1" and increase if more cleanup is needed. Use this for converting blog posts, articles, or documentation into clean PDFs.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--readability-enhancements ENHANCEMENTS- Default:
none- Allowed Values:
-
-
none— No enhancements are used. -
readability-v1— Version 1 of the enhancements is used. Basic cleanup for simple pages with moderate clutter. -
readability-v2— Version 2 of the enhancements is used. More aggressive cleanup for pages with more ads and navigation. -
readability-v3— Version 3 of the enhancements is used. Strong cleanup for heavily cluttered pages with multiple sidebars. -
readability-v4— Version 4 of the enhancements is used. Maximum cleanup for extremely cluttered pages. May remove some content.
-
Data
--data-string
Set the input data for template rendering. The data format can be JSON, XML, YAML or CSV.
- Syntax:
--data-string DATA_STRING- Example:
-
-
Template variables for mail merge:
"{"recipient": "Anna May", "sender": "John Doe"}"
-
Template variables for mail merge:
--data-file
Load the input data for template rendering from the specified file. The data format can be JSON, XML, YAML or CSV.
- Syntax:
--data-file DATA_FILE- Example:
-
-
External data for template rendering:
"/home/user/john/data.json"
-
External data for template rendering:
--data-format
Specify the input data format. Use "auto" for automatic detection or explicitly set to JSON, XML, YAML, or CSV when format is known.
- Syntax:
--data-format DATA_FORMAT- Default:
auto- Allowed Values:
-
-
auto— The data format is auto-detected. -
json -
xml -
yaml -
csv
-
--data-encoding
Set the encoding of the input data file.
- Syntax:
--data-encoding ENCODING- Default:
utf-8- Example:
-
-
Set to use Latin-2 encoding:
"iso8859-2"
-
Set to use Latin-2 encoding:
--data-ignore-undefined
Ignore undefined variables in the HTML template. The default mode is strict so any undefined variable causes the conversion to fail. You can use {% if variable is defined %} to check if the variable is defined.
- Syntax:
--data-ignore-undefined[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--data-auto-escape
Auto escape HTML symbols in the input data before placing them into the output.
- Syntax:
--data-auto-escape[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--data-trim-blocks
Auto trim whitespace around each template command block.
- Syntax:
--data-trim-blocks[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--data-variable-markers
Set the markers that delimit variable expressions in the template. The default Jinja2 syntax uses {{ and }}, which can clash with other systems (e.g. Zapier) that interpret double braces. Use an alternative style to avoid the conflict. Block markers {% %} and comment markers {# #} are not affected.
- Availability:
- Converter >= 24.04. See versioning.
- Syntax:
--data-variable-markers MARKERS- Default:
standard- Allowed Values:
-
-
standard— Standard Jinja2 variable syntax: . -
square— Square-bracket syntax: [[ name ]]. -
angle— Angle-bracket syntax: << name >>.
-
--data-options
key=value pairs:csv_delimiter- The CSV data delimiter, the default is,.xml_remove_root- Remove the root XML element from the input data.data_root- The name of the root element inserted into the input data without a root node (e.g. CSV), the default isdata.
- Syntax:
--data-options OPTIONS- Examples:
-
-
Use semicolon to separate CSV data:
"csv_delimiter=;" -
Name the root of data
rowsand use the name in the template loop {% for row in rows %}...{% endfor %}:"data_root=rows" -
Remove XML root so the HTML template can be simpler:
"xml_remove_root=1"
-
Use semicolon to separate CSV data:
Miscellaneous
--debug-log
Turn on debug logging to troubleshoot conversion issues. Details about the conversion process, including resource loading, rendering steps, and error messages are stored in the debug log. Use this when conversions fail or produce unexpected results.
- Syntax:
--debug-log[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--tag
Tag the conversion with a custom value for tracking and analytics. Use this to categorize conversions by customer ID, document type, or business unit. The tag appears in conversion statistics. A value longer than 32 characters is cut off.
- Syntax:
--tag TAG- Example:
-
-
Track job in analytics:
"client-1234"
-
Track job in analytics:
--http-proxy
A proxy server used by the conversion process for accessing the source URLs with HTTP scheme. This can help circumvent regional restrictions or provide limited access to your intranet.
- Syntax:
--http-proxy PROXY- Constraint:
-
- The value must have format DOMAIN_OR_IP_ADDRESS:PORT.
- Examples:
-
-
Corporate proxy server:
"myproxy.com:8080" -
Direct IP proxy connection:
"113.25.84.10:33333"
-
Corporate proxy server:
--https-proxy
A proxy server used by the conversion process for accessing the source URLs with HTTPS scheme. This can help circumvent regional restrictions or provide limited access to your intranet.
- Syntax:
--https-proxy PROXY- Constraint:
-
- The value must have format DOMAIN_OR_IP_ADDRESS:PORT.
- Examples:
-
-
Secure proxy for HTTPS:
"myproxy.com:443" -
Direct secure proxy IP:
"113.25.84.10:44333"
-
Secure proxy for HTTPS:
--client-certificate
A client certificate to authenticate the converter on your web server. The certificate is used for two-way SSL/TLS authentication (mutual TLS) and adds extra security. Use this when converting content from servers that require client certificate authentication for access.
- Syntax:
--client-certificate CERTIFICATE- Constraint:
-
- The file must exist and not be empty.
- Example:
-
-
Custom CA certificate path:
"/home/user/john/pdfcrowd.crt"
-
Custom CA certificate path:
--client-certificate-password
A password for the PKCS12 file with a client certificate if the certificate file is password-protected.
- Syntax:
--client-certificate-password PASSWORD- Example:
-
-
PKCS12 certificate password:
"123456"
-
PKCS12 certificate password:
Tweaks
--max-loading-time
Set the maximum time for loading the page and its resources. After this time, all requests will be considered successful. This can be useful to ensure that the conversion does not timeout. Use this method if there is no other way to fix page loading.
- Availability:
- Converter >= 20.10. See versioning.
- Syntax:
--max-loading-time MAX_TIME- Constraint:
-
- The accepted range is 10-30.
--converter-user-agent
Specify the User-Agent HTTP header that will be used by the converter when a request is made to the converted web page.
- Syntax:
--converter-user-agent AGENT- Default:
latest-chrome-desktop- Allowed Values:
-
-
chrome-desktop— The user-agent for desktop chrome corresponding to the converter used. -
chrome-mobile— The user-agent for mobile chrome corresponding to the converter used. -
latest-chrome-desktop— The user-agent of the recently released Chrome browser on desktops. -
latest-chrome-mobile— The user-agent of the recently released Chrome browser on mobile devices. -
custom string— A custom string for the user agent.
-
- Examples:
-
-
Mimic the recent chrome on mobiles:
"latest-chrome-mobile" -
Mimic Safari 18.0 browser:
"Mozilla/5.0 (Macintosh; Intel Mac OS X 14_7_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0 Safari/605.1.15"
-
Mimic the recent chrome on mobiles:
API Client Options
--converter-version
Set the converter version. Different versions may produce different output. Choose which one provides the best output for your case.
- Syntax:
--converter-version VERSION- Default:
24.04- Allowed Values:
-
-
24.04— Version 24.04. -
20.10— Version 20.10. -
18.10— Version 18.10.
-
--use-http
Specify whether to use HTTP or HTTPS when connecting to the PDFCrowd API.
- Syntax:
--use-http[=true|false]- Default:
false- Allowed Values:
-
-
true -
false
-
--client-user-agent
Specify the User-Agent HTTP header the CLI sends to the PDFCrowd API.
- Syntax:
--client-user-agent AGENT- Default:
pdfcrowd_cli_client/1.1.0 (https://pdfcrowd.com)
--proxy
Specify an HTTP proxy the CLI uses to connect to the PDFCrowd API.
- Syntax:
--proxy HOST PORT USER_NAME PASSWORD
--retry-count
Specify the number of automatic retries when a 502 or 503 HTTP status code is received. The status code indicates a temporary network issue. This feature can be disabled by setting to 0.
- Syntax:
--retry-count COUNT- Default:
1- Example:
-
-
Retry failed requests three times:
3
-
Retry failed requests three times: