Endpointpost /v3/scanZip
Parameters
data string, required |
The complete Zip file in base64-encoded format. |
spec_id int, optional |
The ID of a custom ad specification set, used to validate the creative. Defaults to 0 (IAB guidelines). |
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
blocked_by_adblock boolean |
Whether or not the tag will likely be blocked by ad blockers.
|
click_tag_found boolean |
Whether or not a click tag was found in the index.html file.
|
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.
|
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.
|
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://.api.advalify.io/v3/scanZip"
-H "X-ApiKey: TCm2Hd_rT4pRNvSZ2cGYCJ6... (example)"
-X POST
-d '{ "data": "QmFzZTY0IG9mIHppcCBmaWxlIGhlcmU=..." }'
Example Response
{
"blocked_by_adblock": false,
"click_tag_found": true,
"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",
"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,
"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": [] },
"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" } }
|