Endpointpost /v3/scanZip
Parameters
data string, required |
The complete Zip file in base64-encoded format. |
spec_id int, optional |
The ID of an ad specification set against which you want to validate the creative. Defaults to 0 (IAB guidelines). |
workspace_id int, optional |
The ID of the workspace in which you want to store the results. |
name string, optional |
The file name of the HTML5 Zip. Will be added to the JSON result, allowing you to keep track of which creative you scanned. |
Response200 400 401 429
animation_duration int |
The time it took for all pixels to stop moving, after the first pixel was painted on the screen. In milliseconds. If the creative animation did not finish when the timeout kicked in, this value will equal -1.
|
blocked_by_adblock boolean |
Whether or not the tag will likely be blocked by ad blockers.
|
console array |
All errors and warnings generated while loading the creative.
|
cookies array |
All cookies that were dropped by the creative, either set via JavaScript or via an HTTP header.
|
cpu_usage int |
The CPU usage, in milliseconds.
|
creative_rendered boolean |
Equals true in case something was painted on the screen, false otherwise.
|
dialogs array |
Any dialog message the creative shows as a pop-up. Generally created by alert() and confirm().
|
dimensions array |
The detected width and height of the creative.
|
dom_content_loaded int |
The time it took for the DOMContentLoaded event to fire, in milliseconds.
|
file_structure array |
Contains the file structure of the Zip, including the name, type and file size.
|
has_backup_ad boolean |
Equals true when a backup ad has been found in the Zip folder.
|
has_border boolean |
Whether or not the creative has a contrasting border.
|
has_external_assets boolean |
Whether or not the creative loads assets from outside the Zip. Keep this at a minimum to reduce additional DNS lookups, connections, etc.
|
has_video boolean |
Whether or not the creative plays video content.
|
html5_library string |
The detected HTML5 library used to create the ad (GreenSock, GWD, CreateJS...)
|
iframes int |
The number of iframes added to the DOM. This should be kept at a minimum to reduce memory usage.
|
job_id string |
A unique ID assigned to the scan.
|
landing_page array |
An object with various information about the landing page that opened upon clickthrough.
|
local_storage array |
All key/value pairs stored in window.localStorage.
|
memory_usage int |
The amount of RAM memory used, in bytes.
|
meta array |
Meta-data about the scan, like the CPU used, the time it took to complete the scan, the server location, etc.
|
meta_ad_size boolean |
Whether or not the index file has a <meta name="ad.size" content="width=X,height=X"> line, as per IAB standards.
|
minified boolean |
Whether or not all CSS and JavaScript files were minified. Returns false if at least one file was found where more than 5% savings were possible, true otherwise.
|
mobile_friendly boolean |
Whether or not the creative will display fine on a mobile device. Equals true if the creative is either responsive or less than 300 pixels wide.
|
network array |
All network requests and their responses, including a full echo of the HTTP headers. Provides SSL certificate information too.
|
name string |
The name of the creative (copied from the payload).
|
tips_and_updatesscan_results object |
An object containing the full scan results, including the number of passed/failed tests.
The tests array contains the result of each test performed.
|
screenshot array |
A screenshot of the creative, in both high-res and thumbnail format. The url points to the location where the screenshot can be found.
|
ssl boolean |
An object with information about the creative's SSL-compliancy. Insecure URLs loaded over http:// will be listed here.
|
time_to_visual_start int |
The time it took for something to the painted on the screen. In milliseconds. If nothing was displayed at all, this value will equal -1.
|
uses_document_write boolean |
Whether or not the creative uses the JS document.write() function. Synchronous code should be avoided.
|
uses_jquery boolean |
Whether or not the creative uses the jQuery library to create the ad.
|
zip array |
An object with a URL pointing to the index file, which can be used to dispay the creative in an iframe.
Use the url to download the original Zip file that was scanned.
|
|
cURL
curl "https://{your_name}.api.advalify.io/v3/scanZip"
-H "X-ApiKey: TCm2Hd_rT4pRNvSZ2cGYCJ6... (example)"
-X POST
-d '{ "data": "QmFzZTY0IG9mIHppcCBmaWxlIGhlcmU=..." }'
Example Response
{
"animation_duration": 3420,
"blocked_by_adblock": false,
"console": {
"errors": ["Error: ReferenceError: somefunction is not defined"],
"warnings": [] },
"cookies": [{
"domain": ".doubleclick.net",
"expires": 1646483650.085365,
"httpOnly": true,
"name": "IDE",
"path": "/",
"priority": "Medium",
"sameSite": "None",
"secure": true,
"session": false,
"size": 70,
"value": "AHWqTUlqh0OPFbGUeGXQqkXebE_Tf9xEs0i7fspXWBfoQHL0p3ooP5Iv-vx7JYmWKsA" }],
"cpu_usage": 66,
"creative_rendered": true,
"dialogs": [],
"dimensions": {
"height": 90,
"width": 728,
"text": "90x728" },
"dom_content_loaded": 162,
"file_structure": [{
"bytes": 3922,
"name": "front_city.png",
"type": "image" },
{
"bytes": 11860,
"name": "index.html",
"type": "html" },
{
"bytes": 6510,
"name": "google_logo.png",
"type": "image" }],
"has_backup_ad": true,
"has_border": false,
"has_external_assets": false,
"has_video": false,
"html5_library": "GreenSock",
"iframes": 1,
"job_id": "7febf-e5693-1b71c-78616",
"landing_page": {
"click_through": {
"type": "clickTag" },
"screenshot": {
"bytes": 21624,
"mime_type": "image/png",
"url": "https://try.cdn.advalify.io/img/9k30d-9k30d-06c63-6185f-5tp7csxb.png", },
"tab": "new",
"title": "Google",
"url": "https://www.google.com",
"working": true },
"local_storage": [],
"memory_usage": 2400256,
"meta": {
"api_version": "v3",
"cpu": "AMD 16-Core EPYC 7302P",
"creative_type": "zip",
"device": "Desktop",
"language": "en-US",
"ram": "128GB",
"scan_duration": "1.871964",
"server_location": "ams",
"timestamp": 1612789956,
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36" },
"meta_ad_size": false,
"minified": true,
"missing_assets": [],
"mobile_friendly": false,
"name": "HTMl5-file.zip",
"network": {
"load_size": {
"host_initiated_subload": 0,
"initial_load": 35690,
"total": 35690 },
"measurement_pixels": 0,
"responses": [{
"bytes": 11860,
"headers": {
"content-encoding": "br",
"content-type": "text/html",
"date": "Mon, 08 Feb 2021 13:12:34 GMT",
"last-modified": "Sat, 18 Apr 2020 18:08:16 GMT" },
"is_pixel": false,
"method": "GET",
"resource_type": "document",
"server_ip": "127.0.0.1",
"ssl": true,
"ssl_info": {
"protocol": "TLS 1.3",
"validFrom": 1607455037,
"validTo": 1922815037 },
"status": 200,
"status_text": "",
"timing": 169,
"url": "https://www.advalify.io/tmp/7febf-e5693-1b71c-78616.zip/index.html" }] },
"scan_results": {
"failed": 2,
"passed": 19,
"report_url": "https://share.advalify.io/c2450-f8e87-71c8a-bf12f",
"tests": {
"load_size": {
"test": "load_size",
"name": "Load Size: Total",
"data_type": "int",
"unit": "bytes",
"expected": 524288,
"expected_text": "less than or equal to 524288 bytes",
"actual": 0,
"operator": "<",
"result": "passed" } } },
"screenshot": {
"highres": {
"bytes": 132,
"color": "#d8ecfe",
"mime_type": "image/png",
"url": "https://try.cdn.advalify.io/img/qa-report-983243-29cbfuzn4mhk.png" },
"thumbnail": {
"bytes": 538,
"color": "#d8ecfe",
"mime_type": "image/jpg",
"url": "https://try.cdn.advalify.io/img/qa-report-983243-xz5rs8mc3yuk.jpg" } },
"ssl": {
"compliant": true,
"insecure_urls": [] },
"time_to_visual_start": 230,
"uses_document_write": false,
"uses_jquery": false,
"zip": {
"index": "https://try.cdn.advalify.io/img/9k30d-79707058-4c143f0c-9k30d-b34cb-ab3eb-znjdp3q6.zip/500 error/Sample HTML5 Leaderboard creative/Sample-HTML5-Leaderboard-creative/index_720x90.html",
"url": "https://try.cdn.advalify.io/img/9k30d-79707058-4c143f0c-9k30d-b34cb-ab3eb-f28vtd57.zip" } }
|