The asset object
A zoomable image, its settings, and how far processing has come.
Attributes
objectstringAlways
asset.idstringThe asset’s ID, which collections and viewers name it by.
titlestringNullableAt most 250 characters, single line; surrounding whitespace is trimmed.
captionstringNullableAt most 250 characters, single line; surrounding whitespace is trimmed.
descriptionstringNullableAt most 10000 characters, line breaks allowed; surrounding whitespace is trimmed.
reference_idstringNullableThe owner’s own identifier for the image, such as a catalog or accession number: unique among the owner’s assets. At most 100 characters, single line; surrounding whitespace is trimmed.
visibilityenumWho may view the asset.
Possible values
publicAnyone may view it, and it may be listed on its owner’s profile.unlistedAnyone with its link may view it; it is listed nowhere.protectedViewing it needs its password, or its owner’s key.
statusenumHow processing went.
succeededandfailedare final.Possible values
unverifiedSubmitted on ZoomHub’s site with an email address, and waiting for the link ZoomHub emailed to be followed. Assets created with a key skip this.queuedWaiting to be processed.processingBeing turned into tiles.succeededDone:kinddescribes the tiles.failedProcessing failed, and the asset has no tiles. Delete it and create it again to retry.
progressnumberHow far processing has come, from
0to1.sourceobjectNullableWhere the image came from, or
nullfor a few images from Zoom.it’s time, whose source isn’t known.Show child attributesHide child attributes
typeenumThe kind of source, which is also the key its details are under.
Possible values
urlAn image or PDF fetched from the web; its details are underurl.uploadA file uploaded through an upload.uploadis an empty object: an upload’s file isn’t exposed.
urlobjectOptionalPresent when
typeisurl.Show child attributesHide child attributes
original_urlstringThe URL the asset was created from.
uploadobjectOptionalPresent, and empty, when
typeisupload.
kindobjectWhat kind of asset it is, known once it is processed.
Show child attributesHide child attributes
typeenumWhat kind of asset it is, which is also the key its details are under.
Possible values
unknownNot processed yet, or processing failed.imageA zoomable image; its tiles are underimage.
imageobjectOptionalPresent when
typeisimage.Show child attributesHide child attributes
dziobjectThe Deep Zoom Image to view.
Show child attributesHide child attributes
urlstringThe DZI manifest’s URL. Read the tiles through it, but don’t store it: it changes when the asset’s protection does.
widthintegerThe image’s width in pixels.
heightintegerThe image’s height in pixels.
tile_sizeintegerThe edge of a tile in pixels, overlap excluded.
tile_overlapintegerHow many pixels each tile overlaps its neighbors.
tile_formatenumThe tiles’ image format, which is also their file extension.
Possible values
jpegJPEG tiles.jpgJPEG tiles, named with the older extension.pngPNG tiles.webpWebP tiles.
linksobjectWhere the asset lives.
Show child attributesHide child attributes
selfstringThis asset in the API.
sharestringThe asset’s page on ZoomHub.
embedstringA script that embeds a viewer for the image where its
<script>tag is.collectionstringNullableThe collection a PDF’s pages were split into, in the API, or
nullfor anything else.
created_atstringWhen the asset was created, in RFC 3339 UTC.
{
"caption": null,
"created_at": "2026-09-30T00:00:00Z",
"description": null,
"id": "smpAsset1",
"kind": {
"image": {
"dzi": {
"height": 3072,
"tile_format": "jpeg",
"tile_overlap": 1,
"tile_size": 254,
"url": "https://cache.zoomhub.net/content/smpAsset1.dzi",
"width": 4096
}
},
"type": "image"
},
"links": {
"collection": null,
"embed": "https://zoomhub.net/a/smpAsset1.js",
"self": "https://api.zoomhub.net/v2/assets/smpAsset1",
"share": "https://zoomhub.net/a/smpAsset1"
},
"object": "asset",
"progress": 1,
"reference_id": null,
"source": {
"type": "url",
"url": {
"original_url": "https://example.com/photo.jpg"
}
},
"status": "succeeded",
"title": "Sample photo",
"visibility": "unlisted"
}{
"caption": null,
"created_at": "2026-09-30T00:00:00Z",
"description": null,
"id": "smpAsset1",
"kind": {
"type": "unknown"
},
"links": {
"collection": null,
"embed": "https://zoomhub.net/a/smpAsset1.js",
"self": "https://api.zoomhub.net/v2/assets/smpAsset1",
"share": "https://zoomhub.net/a/smpAsset1"
},
"object": "asset",
"progress": 0.5,
"reference_id": null,
"source": {
"type": "upload",
"upload": {}
},
"status": "processing",
"title": "Sample photo",
"visibility": "unlisted"
}