curl --request PUT \
--url https://api.doczilla.app/v1/templates/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"output": "PDF",
"variables": {
"page": {
"url": "<string>",
"html": "<string>",
"htmlTemplate": "<string>",
"templateData": {},
"waitUntil": "auto",
"waitForMilliseconds": 2500,
"waitForSelector": {
"selector": "<string>",
"options": {
"visible": false,
"hidden": false,
"timeout": 10000
}
},
"waitForFunction": {
"pageFunction": "window.innerWidth < 100",
"options": {
"polling": "raf",
"timeout": 10000
}
},
"headers": {
"x-foo": "bar"
},
"adblock": true,
"javascript": true,
"cookies": [
{
"name": "<string>",
"value": "<string>",
"domain": "<string>",
"url": "<string>",
"path": "<string>",
"secure": true,
"httpOnly": true,
"sameSite": "Strict",
"expires": 123
}
],
"authentication": {
"username": "<string>",
"password": "<string>"
},
"colorScheme": "<string>",
"mediaType": "screen",
"timezone": "<string>"
},
"screenshot": {
"type": "png",
"device": "Macbook Pro 16",
"viewport": {
"width": 2240,
"height": 1260,
"deviceScaleFactor": 1,
"isMobile": false,
"hasTouch": false,
"isLandscape": false
},
"fullPage": false,
"fromSurface": true,
"omitBackground": false,
"optimizeForSpeed": true,
"quality": 50,
"captureBeyondViewport": false,
"clip": {
"width": 2240,
"height": 1260,
"x": 123,
"y": 123,
"scale": 1
},
"element": "<string>",
"overlay": {
"background": "<string>",
"filter": "none",
"margin": 0.2,
"browser": "light",
"screenshotBorderRadius": 0
}
},
"pdf": {
"scale": 1,
"displayHeaderFooter": false,
"headerHtml": "<string>",
"footerHtml": "<string>",
"printBackground": false,
"landscape": false,
"pageRanges": "1-5",
"format": "letter",
"width": "<string>",
"height": "<string>",
"preferCSSPageSize": false,
"margin": {
"top": "<string>",
"bottom": "<string>",
"left": "<string>",
"right": "<string>"
},
"omitBackground": false,
"outline": false,
"tagged": false
}
}
}
'{
"message": "Validations failed!",
"code": "api.validation",
"fields": {
"page.url": "must be a URL address"
}
}Update one template.
curl --request PUT \
--url https://api.doczilla.app/v1/templates/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"output": "PDF",
"variables": {
"page": {
"url": "<string>",
"html": "<string>",
"htmlTemplate": "<string>",
"templateData": {},
"waitUntil": "auto",
"waitForMilliseconds": 2500,
"waitForSelector": {
"selector": "<string>",
"options": {
"visible": false,
"hidden": false,
"timeout": 10000
}
},
"waitForFunction": {
"pageFunction": "window.innerWidth < 100",
"options": {
"polling": "raf",
"timeout": 10000
}
},
"headers": {
"x-foo": "bar"
},
"adblock": true,
"javascript": true,
"cookies": [
{
"name": "<string>",
"value": "<string>",
"domain": "<string>",
"url": "<string>",
"path": "<string>",
"secure": true,
"httpOnly": true,
"sameSite": "Strict",
"expires": 123
}
],
"authentication": {
"username": "<string>",
"password": "<string>"
},
"colorScheme": "<string>",
"mediaType": "screen",
"timezone": "<string>"
},
"screenshot": {
"type": "png",
"device": "Macbook Pro 16",
"viewport": {
"width": 2240,
"height": 1260,
"deviceScaleFactor": 1,
"isMobile": false,
"hasTouch": false,
"isLandscape": false
},
"fullPage": false,
"fromSurface": true,
"omitBackground": false,
"optimizeForSpeed": true,
"quality": 50,
"captureBeyondViewport": false,
"clip": {
"width": 2240,
"height": 1260,
"x": 123,
"y": 123,
"scale": 1
},
"element": "<string>",
"overlay": {
"background": "<string>",
"filter": "none",
"margin": 0.2,
"browser": "light",
"screenshotBorderRadius": 0
}
},
"pdf": {
"scale": 1,
"displayHeaderFooter": false,
"headerHtml": "<string>",
"footerHtml": "<string>",
"printBackground": false,
"landscape": false,
"pageRanges": "1-5",
"format": "letter",
"width": "<string>",
"height": "<string>",
"preferCSSPageSize": false,
"margin": {
"top": "<string>",
"bottom": "<string>",
"left": "<string>",
"right": "<string>"
},
"omitBackground": false,
"outline": false,
"tagged": false
}
}
}
'{
"message": "Validations failed!",
"code": "api.validation",
"fields": {
"page.url": "must be a URL address"
}
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
The name of the template.
200The output format of the template.
PDF, IMAGE The variables of the template.
Show child attributes
Page options, either provide the url, html or htmlTemplate option.
Show child attributes
URL to go to. Should include the scheme, e.g. https://
HTML to render. Needs to be base64 encoded!
HTML template to render, uses Handlebars to render your HTML together with the provided templateData. Needs to be base64 encoded!
Template data, only used in combination with page.htmlTemplate.
When to consider waiting succeeds.
auto our smart waiting option that can handle 90% of the cases.load waits for the 'load' event.domcontentloaded waits for the 'DOMContentLoaded' event.networkidle0 waits till there are no more than 0 network connections for at least 500 ms.networkidle2 waits till there are no more than 2 network connections for at least 500 ms.auto, load, domcontentloaded, networkidle0, networkidle2 "auto"
Wait for a certain amount of milliseconds before the request continues.
0 <= x <= 5000Show child attributes
Options for configuring waiting behavior.
Show child attributes
Wait for the selected element to be present in DOM and to be visibleAn element is considered to be visible if all of the following is true:
hidden or collapsefalse
Wait for the selected element to not be found in the DOM or to be hidden.An element is considered to be hidden if at least one of the following is true:
hidden or collapsefalse
Maximum time to wait in milliseconds.
1 <= x <= 3000010000
Wait for the pageFunction to execute in the page. If the pageFunction doesn't execute successfully after the timeout milliseconds of waiting, the request will continue.
Show child attributes
Function to be evaluated in browser context until it returns a truthy value.
1 - 1024"window.innerWidth < 100"
Options for configuring waiting behavior.
Show child attributes
An interval at which the pageFunction is executed, defaults to raf. If polling is a number, then it is treated as an interval in milliseconds at which the function would be executed. If polling is a string, then it can be one of the following values:
raf to constantly execute pageFunction in requestAnimationFrame callback. This is the tightest polling mode which is suitable to observe styling changes.mutation to execute pageFunction on every DOM mutation.raf, mutation "raf"
Maximum time to wait in milliseconds.
1 <= x <= 3000010000
An object containing additional HTTP headers to be sent with every request. All header values must be strings.
{ "x-foo": "bar" }Use our build-in adblocker.
true
Whether or not to enable JavaScript on the page.
true
Cookies added to the page, Also accepted as string inside headers.cookie.
Show child attributes
Cookie name.
1 - 1024Cookie value.
1 - 4096Cookie domain.
1 - 512The request-URI to associate with the setting of the cookie. This value can affect the default domain, path, source port, and source scheme values of the created cookie. Should include the scheme, e.g. https://
Cookie path.
1 - 512true if cookie is secure.
true if cookie is http-only.
Cookie SameSite type.
Strict, Lax, None Cookie expiration date (UTC time in seconds, counted from January 1, 1970.), session cookie if not set.
Color-scheme to set on the page.
20Changes the CSS media type of the page.
screen, print Changes the timezone of the page. See ICU’s metaZones.txt for a list of supported timezone IDs.
Show child attributes
png, jpeg, webp "png"
Device preset to use, will not be set when viewport option is provided!
Blackberry PlayBook, Blackberry PlayBook landscape, BlackBerry Z30, BlackBerry Z30 landscape, Galaxy Note 3, Galaxy Note 3 landscape, Galaxy Note II, Galaxy Note II landscape, Galaxy S III, Galaxy S III landscape, Galaxy S5, Galaxy S5 landscape, Galaxy S8, Galaxy S8 landscape, Galaxy S9+, Galaxy S9+ landscape, Galaxy Tab S4, Galaxy Tab S4 landscape, iPad, iPad landscape, iPad (gen 6), iPad (gen 6) landscape, iPad (gen 7), iPad (gen 7) landscape, iPad Mini, iPad Mini landscape, iPad Pro, iPad Pro landscape, iPad Pro 11, iPad Pro 11 landscape, iPhone 4, iPhone 4 landscape, iPhone 5, iPhone 5 landscape, iPhone 6, iPhone 6 landscape, iPhone 6 Plus, iPhone 6 Plus landscape, iPhone 7, iPhone 7 landscape, iPhone 7 Plus, iPhone 7 Plus landscape, iPhone 8, iPhone 8 landscape, iPhone 8 Plus, iPhone 8 Plus landscape, iPhone SE, iPhone SE landscape, iPhone X, iPhone X landscape, iPhone XR, iPhone XR landscape, iPhone 11, iPhone 11 landscape, iPhone 11 Pro, iPhone 11 Pro landscape, iPhone 11 Pro Max, iPhone 11 Pro Max landscape, iPhone 12, iPhone 12 landscape, iPhone 12 Pro, iPhone 12 Pro landscape, iPhone 12 Pro Max, iPhone 12 Pro Max landscape, iPhone 12 Mini, iPhone 12 Mini landscape, iPhone 13, iPhone 13 landscape, iPhone 13 Pro, iPhone 13 Pro landscape, iPhone 13 Pro Max, iPhone 13 Pro Max landscape, iPhone 13 Mini, iPhone 13 Mini landscape, iPhone 14, iPhone 14 landscape, iPhone 14 Plus, iPhone 14 Plus landscape, iPhone 14 Pro, iPhone 14 Pro landscape, iPhone 14 Pro Max, iPhone 14 Pro Max landscape, iPhone 15, iPhone 15 landscape, iPhone 15 Plus, iPhone 15 Plus landscape, iPhone 15 Pro, iPhone 15 Pro landscape, iPhone 15 Pro Max, iPhone 15 Pro Max landscape, JioPhone 2, JioPhone 2 landscape, Kindle Fire HDX, Kindle Fire HDX landscape, LG Optimus L70, LG Optimus L70 landscape, Microsoft Lumia 550, Microsoft Lumia 950, Microsoft Lumia 950 landscape, Nexus 10, Nexus 10 landscape, Nexus 4, Nexus 4 landscape, Nexus 5, Nexus 5 landscape, Nexus 5X, Nexus 5X landscape, Nexus 6, Nexus 6 landscape, Nexus 6P, Nexus 6P landscape, Nexus 7, Nexus 7 landscape, Nokia Lumia 520, Nokia Lumia 520 landscape, Nokia N9, Nokia N9 landscape, Pixel 2, Pixel 2 landscape, Pixel 2 XL, Pixel 2 XL landscape, Pixel 3, Pixel 3 landscape, Pixel 4, Pixel 4 landscape, Pixel 4a (5G), Pixel 4a (5G) landscape, Pixel 5, Pixel 5 landscape, Moto G4, Moto G4 landscape, Macbook Pro 13, Macbook Pro 15, Macbook Pro 16, iMac 21, iMac 21 4K, iMac 24 4.5K, iMac 27, iMac 27 5K "Macbook Pro 16"
Define an custom viewport, when defined the device option will be ignored!
Show child attributes
The page width in CSS pixels.
0 <= x <= 4480The page height in CSS pixels.
0 <= x <= 2520Specify device scale factor. See devicePixelRatio for more info.
1 <= x <= 31
Whether the meta viewport tag is taken into account.
false
Specify if the viewport supports touch events.
false
Specifies if the viewport is in landscape mode.
false
When true, takes a screenshot of the full page.
false
Capture the screenshot from the surface, rather than the view.
true
Hides default white background and allows capturing screenshots with transparency.
false
true
Quality of the image, between 0-100. Not applicable to png images.
0 <= x <= 100Capture the screenshot beyond the viewport. false if there is no clip. true otherwise.
false
Specifies the region of the page to clip.
Show child attributes
The width of the element in pixels.
0 <= x <= 4480The height of the element in pixels.
0 <= x <= 2520x >= 01
Add an overlay to the image. Cannot be used together with the fullPage option!
Show child attributes
Color to apply as background, can be an an hexadecimal/rgb/rgba color code or CSS gradient.
Apply CSS Filter to background.
"none"
Margin to apply.
0 <= x <= 10.2
Browser to apply.
light, dark The border radius, specified in CSS pixels, is applied to the screenshot only when the device option is not set.
0
Show child attributes
Scales the rendering of the web page. Amount must be between 0.1 and 2.
0.1 <= x <= 21
Whether to show the header and footer.
false
HTML template for the print header. Should be valid HTML (base64 encoded) with the following classes used to inject values into them:
date formatted print datetitle document titleurl document locationpageNumber current page numbertotalPages total pages in the documentHTML template for the print footer. Has the same constraints and support for special classes as headerHtml.
Set to true to print background graphics.
false
Whether to print in landscape orientation.
false
Paper ranges to print, e.g. 1-5, 8, 11-13.
"1-5"
If set, this takes priority over the width and height options.
The sizes of each format are as follows:
letter 8.5in x 11inlegal 8.5in x 14intabloid 11in x 17inledger 17in x 11ina0 33.1in x 46.8ina1 23.4in x 33.1ina2 16.54in x 23.4ina3 11.7in x 16.54ina4 8.27in x 11.7ina5 5.83in x 8.27ina6 4.13in x 5.83inletter, legal, tabloid, ledger, a0, a1, a2, a3, a4, a5, a6 "letter"
Sets the width of paper. You can pass in a number or a string with a unit.
Sets the height of paper. You can pass in a number or a string with a unit.
Hides default white background and allows generating pdfs with transparency.
false
Generate document outline. If this is enabled the PDF will also be tagged (accessible).
false
Generate tagged (accessible) PDF. This is experimental and will increase the size of the PDF.
false
Was this page helpful?