#
Push assets
Reference documentation
Visit the API reference documentation for more details on available endpoints for assets.
#
Create assets
In Quable, an asset is composed of:
- a binary file (jpeg, mp4, ppt, etc.)
- attribute's values (shooting date, model name, etc.)
#
Importing attribute values
Importing attribute's values works the same way for assets as for classification's and document's attribute values.
#
Importing binary files
For the binary file, things are a little trickier.
There are two ways to push an asset binary file in Quable DAM:
If the binary file is external (often located in another DAM), you can point to it using its URL when creating the asset object. This is a POST request.
curl --location 'https://{{instance}}.quable.com/api/assets' \
--header 'accept: */*' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{bearerToken}}' \
--data '{
"id": "myAssetIdentifier",
"classification": {
"id": "myDamClassificationIdentifier"
},
"attributes": {
"date_shooting" : "2023-11-09T10:00:00",
"mannequin" : "Jane Doe"
},
"remotePath": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQK__EYbk6y0la-IHFnoViF-ZRSkdam5yxhhtbsh3lG8YUQBuYEW7LLyi3qxl_vmu0-PyI&usqp=CAU"
}'
The response will display as follow:
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"name": "AssetOutput/name",
"isActive": "AssetOutput/isActive",
"attributes": "AssetOutput/attributes",
"metadata": "AssetOutput/metadata",
"url": "AssetOutput/url",
"originalFilename": "AssetOutput/originalFilename",
"thumbnailUrl": "AssetOutput/thumbnailUrl",
"previewUrl": "AssetOutput/previewUrl",
"classifications": "AssetOutput/classifications",
"documentLinks": "AssetOutput/documentLinks",
"variantLinks": "AssetOutput/variantLinks",
"dateCreated": "AssetOutput/dateCreated",
"dateModified": "AssetOutput/dateModified",
"thumbnails": "AssetOutput/thumbnails",
"legacyId": "AssetOutput/legacyId",
"active": "AssetOutput/active"
},
"@type": "Asset",
"@id": "/api/assets/myAssetIdentifier",
"name": "",
"active": true,
"attributes": [],
"metadata": [],
"url": "https://www.crafters.fr/images/stories/virtuemart/sols20/633_chemise_homme_stretch_manches_longues_blake_men_black_face.png",
"originalFilename": "633_chemise_homme_stretch_manches_longues_blake_men_black_face.png",
"thumbnailUrl": "",
"previewUrl": "",
"classifications": [
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"parentCode": "ClassificationOutput/parentCode",
"catalogId": "ClassificationOutput/catalogId",
"isActive": "ClassificationOutput/isActive",
"attributes": "ClassificationOutput/attributes",
"assetLinks": "ClassificationOutput/assetLinks",
"mainAssetUrl": "ClassificationOutput/mainAssetUrl",
"mainAssetThumbnailUrl": "ClassificationOutput/mainAssetThumbnailUrl",
"dateCreated": "ClassificationOutput/dateCreated",
"dateModified": "ClassificationOutput/dateModified",
"createdBy": "ClassificationOutput/createdBy",
"updatedBy": "ClassificationOutput/updatedBy",
"legacyId": "ClassificationOutput/legacyId",
"active": "ClassificationOutput/active"
},
"@type": "Classification",
"@id": "/api/classifications/dam_sort",
"catalogId": null,
"id": "dam_sort",
"legacyId": 3
}
],
"documentLinks": [],
"variantLinks": [],
"dateCreated": "2023-11-14T10:58:01+00:00",
"dateModified": "2023-11-14T10:58:02+00:00",
"thumbnails": {
"preview": null
},
"id": "myAssetIdentifier",
"legacyId": 178
}
This requires two steps:
- pushing the file to Quable
- associating the file with an existing asset.
1. Pushing the file to Quable
curl --location 'https://{{instance}}.quable.com/api/files' \
--header 'Authorization: Bearer {{bearerToken}}' \
--form 'fileType="asset"' \
--form 'file=@"{{assetFile}}"'
This will return a payload response like so:
{
"name": "shirt.jpg",
"location": {
"container": "education-developers-dam",
"filename": "c52c1695-a303-4d7f-9bc5-c50142843325"
},
"metadatas": {
"mime_type": "image/jpeg"
},
"id": "c52c1695-a303-4d7f-9bc5-c50142843325",
"type": "asset",
"status": "available",
"dateModified": "2023-11-14T10:10:42+00:00",
"dateCreated": "2023-11-14T10:10:42+00:00"
}
Make sure to copy the file's ID. It will be needed in the next step to do a POST request to create the asset object.
2. Creating the asset object
This is a POST request as well:
curl --location 'https://{{instance}}.quable.com/api/assets' \
--header 'accept: */*' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{bearerToken}}' \
--data '{
"id": "myAssetIdentifier",
"file": {
"id": "theFileIdentifier"
},
"classification": {
"id": "myDamClassificationIdentifier"
}
}'
In case of success, the response will come through as an
HTTP 201
.
The response will look like so:
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"name": "AssetOutput/name",
"isActive": "AssetOutput/isActive",
"attributes": "AssetOutput/attributes",
"metadata": "AssetOutput/metadata",
"url": "AssetOutput/url",
"originalFilename": "AssetOutput/originalFilename",
"thumbnailUrl": "AssetOutput/thumbnailUrl",
"previewUrl": "AssetOutput/previewUrl",
"classifications": "AssetOutput/classifications",
"documentLinks": "AssetOutput/documentLinks",
"variantLinks": "AssetOutput/variantLinks",
"dateCreated": "AssetOutput/dateCreated",
"dateModified": "AssetOutput/dateModified",
"thumbnails": "AssetOutput/thumbnails",
"legacyId": "AssetOutput/legacyId",
"active": "AssetOutput/active"
},
"@type": "Asset",
"@id": "/api/assets/blueshirt",
"name": "shirt.jpg",
"active": true,
"attributes": [],
"metadata": {
"color_space": "sRGB",
"file_size": "1.31 MB",
"width": "3064",
"height": "4592",
"orientation": "portrait",
"file_name": "shirt.jpg",
"mime_type": "image/jpeg",
"detail": {
"FileSize": "1373 kB",
"FileModifyDate": "2023:11:14 10:41:05+00:00",
"FileAccessDate": "2023:11:14 10:41:05+00:00",
"FileInodeChangeDate": "2023:11:14 10:41:05+00:00",
"FilePermissions": "-rw-r--r--",
"FileType": "JPEG",
"FileTypeExtension": "jpg",
"MIMEType": "image/jpeg",
"JFIFVersion": 1.01,
"ResolutionUnit": "inches",
"XResolution": 72,
"YResolution": 72,
"ProfileCMMType": "Linotronic",
"ProfileVersion": "2.1.0",
"ProfileClass": "Display Device Profile",
"ColorSpaceData": "RGB ",
"ProfileConnectionSpace": "XYZ ",
"ProfileDateTime": "1998:02:09 06:49:00",
"ProfileFileSignature": "acsp",
"PrimaryPlatform": "Microsoft Corporation",
"CMMFlags": "Not Embedded, Independent",
"DeviceManufacturer": "Hewlett-Packard",
"DeviceModel": "sRGB",
"DeviceAttributes": "Reflective, Glossy, Positive, Color",
"RenderingIntent": "Perceptual",
"ConnectionSpaceIlluminant": "0.9642 1 0.82491",
"ProfileCreator": "Hewlett-Packard",
"ProfileID": 0,
"ProfileCopyright": "Copyright (c) 1998 Hewlett-Packard Company",
"ProfileDescription": "sRGB IEC61966-2.1",
"MediaWhitePoint": "0.95045 1 1.08905",
"MediaBlackPoint": "0 0 0",
"RedMatrixColumn": "0.43607 0.22249 0.01392",
"GreenMatrixColumn": "0.38515 0.71687 0.09708",
"BlueMatrixColumn": "0.14307 0.06061 0.7141",
"DeviceMfgDesc": "IEC http://www.iec.ch",
"DeviceModelDesc": "IEC 61966-2.1 Default RGB colour space - sRGB",
"ViewingCondDesc": "Reference Viewing Condition in IEC61966-2.1",
"ViewingCondIlluminant": "19.6445 20.3718 16.8089",
"ViewingCondSurround": "3.92889 4.07439 3.36179",
"ViewingCondIlluminantType": "D50",
"Luminance": "76.03647 80 87.12462",
"MeasurementObserver": "CIE 1931",
"MeasurementBacking": "0 0 0",
"MeasurementGeometry": "Unknown",
"MeasurementFlare": "0.999%",
"MeasurementIlluminant": "D65",
"Technology": "Cathode Ray Tube Display",
"RedTRC": "(Binary data 2060 bytes, use -b option to extract)",
"GreenTRC": "(Binary data 2060 bytes, use -b option to extract)",
"BlueTRC": "(Binary data 2060 bytes, use -b option to extract)",
"ImageWidth": 3064,
"ImageHeight": 4592,
"EncodingProcess": "Progressive DCT, Huffman coding",
"BitsPerSample": 8,
"ColorComponents": 3,
"YCbCrSubSampling": "YCbCr4:2:0 (2 2)",
"ImageSize": "3064x4592",
"Megapixels": 14.1
}
},
"url": "https://cdn.quable.com/education-developers/blueshirt/original/shirt.jpg",
"originalFilename": "shirt.jpg",
"thumbnailUrl": "https://cdn.quable.com/education-developers/blueshirt/system-thumbnail/shirt-jpg.jpg",
"previewUrl": "https://cdn.quable.com/education-developers/blueshirt/system-preview/shirt-jpg.jpg",
"classifications": [
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"parentCode": "ClassificationOutput/parentCode",
"catalogId": "ClassificationOutput/catalogId",
"isActive": "ClassificationOutput/isActive",
"attributes": "ClassificationOutput/attributes",
"assetLinks": "ClassificationOutput/assetLinks",
"mainAssetUrl": "ClassificationOutput/mainAssetUrl",
"mainAssetThumbnailUrl": "ClassificationOutput/mainAssetThumbnailUrl",
"dateCreated": "ClassificationOutput/dateCreated",
"dateModified": "ClassificationOutput/dateModified",
"createdBy": "ClassificationOutput/createdBy",
"updatedBy": "ClassificationOutput/updatedBy",
"legacyId": "ClassificationOutput/legacyId",
"active": "ClassificationOutput/active"
},
"@type": "Classification",
"@id": "/api/classifications/dam_sort",
"catalogId": null,
"id": "dam_sort",
"legacyId": 3
}
],
"documentLinks": [],
"variantLinks": [],
"dateCreated": "2023-11-14T10:41:04+00:00",
"dateModified": "2023-11-14T10:41:05+00:00",
"thumbnails": {
"preview": "https://cdn.quable.com/education-developers/blueshirt/system-preview/shirt-jpg.jpg",
"thumbnail": "https://cdn.quable.com/education-developers/blueshirt/system-thumbnail/shirt-jpg.jpg"
},
"id": "blueshirt",
"legacyId": 177
}
#
Fetch assets
This allows to verify if the asset already exists in the PIM, or if it has to be created.
curl --location --globoff --request GET 'https://{{instance}}.quable.com/api/assets/81f1a5f5-9a54-40bb-9bf3-front' \
--header 'Authorization: Bearer _api-token_'
In case of success, the response will come through as an
HTTP 200
.
The fetched resources will be available in a
hydra:member
table.
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"name": "AssetOutput/name",
"isActive": "AssetOutput/isActive",
"attributes": "AssetOutput/attributes",
"metadata": "AssetOutput/metadata",
"url": "AssetOutput/url",
"originalFilename": "AssetOutput/originalFilename",
"thumbnailUrl": "AssetOutput/thumbnailUrl",
"previewUrl": "AssetOutput/previewUrl",
"classifications": "AssetOutput/classifications",
"documentLinks": "AssetOutput/documentLinks",
"variantLinks": "AssetOutput/variantLinks",
"dateCreated": "AssetOutput/dateCreated",
"dateModified": "AssetOutput/dateModified",
"thumbnails": "AssetOutput/thumbnails",
"legacyId": "AssetOutput/legacyId",
"active": "AssetOutput/active"
},
"@type": "Asset",
"@id": "/api/assets/81f1a5f5-9a54-40bb-9bf3-front",
"name": "shirt.jpg",
"active": true,
"attributes": [],
"metadata": {
"color_space": "sRGB",
"file_size": "1.31MB",
"width": "3064",
"height": "4592",
"orientation": "portrait",
"file_name": "shirt.jpg",
"mime_type": "image/jpeg",
"detail": {
"FileSize": "1373 kB",
"FileModifyDate": "2023:11:14 10:12:02+00:00",
"FileAccessDate": "2023:11:14 10:12:02+00:00",
"FileInodeChangeDate": "2023:11:14 10:12:02+00:00",
"FilePermissions": "-rw-------",
"FileType": "JPEG",
"FileTypeExtension": "jpg",
"MIMEType": "image/jpeg",
"JFIFVersion": 1.01,
"ResolutionUnit": "inches",
"XResolution": 72,
"YResolution": 72,
"ProfileCMMType": "Linotronic",
"ProfileVersion": "2.1.0",
"ProfileClass": "Display Device Profile",
"ColorSpaceData": "RGB ",
"ProfileConnectionSpace": "XYZ ",
"ProfileDateTime": "1998:02:09 06:49:00",
"ProfileFileSignature": "acsp",
"PrimaryPlatform": "Microsoft Corporation",
"CMMFlags": "Not Embedded, Independent",
"DeviceManufacturer": "Hewlett-Packard",
"DeviceModel": "sRGB",
"DeviceAttributes": "Reflective, Glossy, Positive, Color",
"RenderingIntent": "Perceptual",
"ConnectionSpaceIlluminant": "0.9642 1 0.82491",
"ProfileCreator": "Hewlett-Packard",
"ProfileID": 0,
"ProfileCopyright": "Copyright (c) 1998 Hewlett-Packard Company",
"ProfileDescription": "sRGB IEC61966-2.1",
"MediaWhitePoint": "0.95045 1 1.08905",
"MediaBlackPoint": "0 0 0",
"RedMatrixColumn": "0.43607 0.22249 0.01392",
"GreenMatrixColumn": "0.38515 0.71687 0.09708",
"BlueMatrixColumn": "0.14307 0.06061 0.7141",
"DeviceMfgDesc": "IEC http://www.iec.ch",
"DeviceModelDesc": "IEC 61966-2.1 Default RGB colour space - sRGB",
"ViewingCondDesc": "Reference Viewing Condition in IEC61966-2.1",
"ViewingCondIlluminant": "19.6445 20.3718 16.8089",
"ViewingCondSurround": "3.92889 4.07439 3.36179",
"ViewingCondIlluminantType": "D50",
"Luminance": "76.03647 80 87.12462",
"MeasurementObserver": "CIE 1931",
"MeasurementBacking": "0 0 0",
"MeasurementGeometry": "Unknown",
"MeasurementFlare": "0.999%",
"MeasurementIlluminant": "D65",
"Technology": "Cathode Ray Tube Display",
"RedTRC": "(Binary data 2060 bytes, use -b option to extract)",
"GreenTRC": "(Binary data 2060 bytes, use -b option to extract)",
"BlueTRC": "(Binary data 2060 bytes, use -b option to extract)",
"ImageWidth": 3064,
"ImageHeight": 4592,
"EncodingProcess": "Progressive DCT, Huffman coding",
"BitsPerSample": 8,
"ColorComponents": 3,
"YCbCrSubSampling": "YCbCr4:2:0 (2 2)",
"ImageSize": "3064x4592",
"Megapixels": 14.1
}
},
"url": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/original/shirt.jpg",
"originalFilename": "shirt.jpg",
"thumbnailUrl": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/thumbnail/shirt-jpg.jpg",
"previewUrl": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/preview/shirt-jpg.jpg",
"classifications": [
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"parentCode": "ClassificationOutput/parentCode",
"catalogId": "ClassificationOutput/catalogId",
"isActive": "ClassificationOutput/isActive",
"attributes": "ClassificationOutput/attributes",
"assetLinks": "ClassificationOutput/assetLinks",
"mainAssetUrl": "ClassificationOutput/mainAssetUrl",
"mainAssetThumbnailUrl": "ClassificationOutput/mainAssetThumbnailUrl",
"dateCreated": "ClassificationOutput/dateCreated",
"dateModified": "ClassificationOutput/dateModified",
"createdBy": "ClassificationOutput/createdBy",
"updatedBy": "ClassificationOutput/updatedBy",
"legacyId": "ClassificationOutput/legacyId",
"active": "ClassificationOutput/active"
},
"@type": "Classification",
"@id": "/api/classifications/dam_sort",
"catalogId": null,
"id": "dam_sort",
"legacyId": 3
}
],
"documentLinks": [],
"variantLinks": [],
"dateCreated": "2023-11-14T10:12:03+00:00",
"dateModified": "2023-11-14T10:12:05+00:00",
"thumbnails": {
"preview": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/preview/shirt-jpg.jpg",
"thumbnail": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/thumbnail/shirt-jpg.jpg",
"1920x": "https://cdn.quable.com/education-developers/81f1a5f5-9a54-40bb-9bf3-front/1920x/shirt-jpg.jpg"
},
"id": "81f1a5f5-9a54-40bb-9bf3-front",
"legacyId": 176
}
#
Update assets
Note
Not all attributes need to be pushed here. The PIM API will consider the body request only.
Updating existing assets work the same way as for asset creating (POST requests). If the binary file does not change, there is no need to specify it for each request.
curl --location --request PUT 'https://{{instance}}.quable.com/api/assets/7c5f3868-d166-4bda-b5bd-front' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer _api-token_' \
--data '{
"id": "7c5f3868-d166-4bda-b5bd-front",
"attributes": {
"reference_name": {
"fr_FR" : "Chemise bleue",
"en_US" : "Blue short"
}
}
}'
In case of success, the response will come through as an HTTP 200 .
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"name": "AssetOutput/name",
"isActive": "AssetOutput/isActive",
"attributes": "AssetOutput/attributes",
"metadata": "AssetOutput/metadata",
"url": "AssetOutput/url",
"originalFilename": "AssetOutput/originalFilename",
"thumbnailUrl": "AssetOutput/thumbnailUrl",
"previewUrl": "AssetOutput/previewUrl",
"classifications": "AssetOutput/classifications",
"documentLinks": "AssetOutput/documentLinks",
"variantLinks": "AssetOutput/variantLinks",
"dateCreated": "AssetOutput/dateCreated",
"dateModified": "AssetOutput/dateModified",
"thumbnails": "AssetOutput/thumbnails",
"legacyId": "AssetOutput/legacyId",
"active": "AssetOutput/active"
},
"@type": "Asset",
"@id": "/api/assets/blueshirt",
"name": "shirt.jpg",
"active": true,
"attributes": {
"attr_photographer": "Joanne doe",
"media_desc": {
"en_GB": "this is a blue shirt",
"en_US": null,
"fr_FR": "il s'agit d'une chemise bleue"
}
},
"metadata": {
"color_space": "sRGB",
"file_size": "1.31 MB",
"width": "3064",
"height": "4592",
"orientation": "portrait",
"file_name": "shirt.jpg",
"mime_type": "image/jpeg",
"detail": {
"FileSize": "1373 kB",
"FileModifyDate": "2023:11:14 10:41:05+00:00",
"FileAccessDate": "2023:11:14 10:41:05+00:00",
"FileInodeChangeDate": "2023:11:14 10:41:05+00:00",
"FilePermissions": "-rw-r--r--",
"FileType": "JPEG",
"FileTypeExtension": "jpg",
"MIMEType": "image/jpeg",
"JFIFVersion": 1.01,
"ResolutionUnit": "inches",
"XResolution": 72,
"YResolution": 72,
"ProfileCMMType": "Linotronic",
"ProfileVersion": "2.1.0",
"ProfileClass": "Display Device Profile",
"ColorSpaceData": "RGB ",
"ProfileConnectionSpace": "XYZ ",
"ProfileDateTime": "1998:02:09 06:49:00",
"ProfileFileSignature": "acsp",
"PrimaryPlatform": "Microsoft Corporation",
"CMMFlags": "Not Embedded, Independent",
"DeviceManufacturer": "Hewlett-Packard",
"DeviceModel": "sRGB",
"DeviceAttributes": "Reflective, Glossy, Positive, Color",
"RenderingIntent": "Perceptual",
"ConnectionSpaceIlluminant": "0.9642 1 0.82491",
"ProfileCreator": "Hewlett-Packard",
"ProfileID": 0,
"ProfileCopyright": "Copyright (c) 1998 Hewlett-Packard Company",
"ProfileDescription": "sRGB IEC61966-2.1",
"MediaWhitePoint": "0.95045 1 1.08905",
"MediaBlackPoint": "0 0 0",
"RedMatrixColumn": "0.43607 0.22249 0.01392",
"GreenMatrixColumn": "0.38515 0.71687 0.09708",
"BlueMatrixColumn": "0.14307 0.06061 0.7141",
"DeviceMfgDesc": "IEC http://www.iec.ch",
"DeviceModelDesc": "IEC 61966-2.1 Default RGB colour space - sRGB",
"ViewingCondDesc": "Reference Viewing Condition in IEC61966-2.1",
"ViewingCondIlluminant": "19.6445 20.3718 16.8089",
"ViewingCondSurround": "3.92889 4.07439 3.36179",
"ViewingCondIlluminantType": "D50",
"Luminance": "76.03647 80 87.12462",
"MeasurementObserver": "CIE 1931",
"MeasurementBacking": "0 0 0",
"MeasurementGeometry": "Unknown",
"MeasurementFlare": "0.999%",
"MeasurementIlluminant": "D65",
"Technology": "Cathode Ray Tube Display",
"RedTRC": "(Binary data 2060 bytes, use -b option to extract)",
"GreenTRC": "(Binary data 2060 bytes, use -b option to extract)",
"BlueTRC": "(Binary data 2060 bytes, use -b option to extract)",
"ImageWidth": 3064,
"ImageHeight": 4592,
"EncodingProcess": "Progressive DCT, Huffman coding",
"BitsPerSample": 8,
"ColorComponents": 3,
"YCbCrSubSampling": "YCbCr4:2:0 (2 2)",
"ImageSize": "3064x4592",
"Megapixels": 14.1
}
},
"url": "https://cdn.quable.com/education-developers/blueshirt/original/shirt.jpg",
"originalFilename": "shirt.jpg",
"thumbnailUrl": "https://cdn.quable.com/education-developers/blueshirt/system-thumbnail/shirt-jpg.jpg",
"previewUrl": "https://cdn.quable.com/education-developers/blueshirt/system-preview/shirt-jpg.jpg",
"classifications": [
{
"@context": {
"@vocab": "https://education-developers.quable.com/api/docs.jsonld#",
"hydra": "http://www.w3.org/ns/hydra/core#",
"parentCode": "ClassificationOutput/parentCode",
"catalogId": "ClassificationOutput/catalogId",
"isActive": "ClassificationOutput/isActive",
"attributes": "ClassificationOutput/attributes",
"assetLinks": "ClassificationOutput/assetLinks",
"mainAssetUrl": "ClassificationOutput/mainAssetUrl",
"mainAssetThumbnailUrl": "ClassificationOutput/mainAssetThumbnailUrl",
"dateCreated": "ClassificationOutput/dateCreated",
"dateModified": "ClassificationOutput/dateModified",
"createdBy": "ClassificationOutput/createdBy",
"updatedBy": "ClassificationOutput/updatedBy",
"legacyId": "ClassificationOutput/legacyId",
"active": "ClassificationOutput/active"
},
"@type": "Classification",
"@id": "/api/classifications/dam_sort",
"catalogId": null,
"id": "dam_sort",
"legacyId": 3
}
],
"documentLinks": [],
"variantLinks": [],
"dateCreated": "2023-11-14T10:41:04+00:00",
"dateModified": "2023-11-15T10:43:57+00:00",
"thumbnails": {
"preview": "https://cdn.quable.com/education-developers/blueshirt/system-preview/shirt-jpg.jpg",
"thumbnail": "https://cdn.quable.com/education-developers/blueshirt/system-thumbnail/shirt-jpg.jpg"
},
"id": "blueshirt",
"legacyId": 177
}
#
Delete assets
curl --location --request DELETE 'https://{{instance}}.quable.com/api/assets/23edd9a9-3651-4798-bb56-front' \
--header 'Authorization: Bearer _api-token_'
In case of success, the response will come through as an HTTP 204 and the response body will be empty.
#
Link assets to documents
Links can be optional
If your datamodel is simpler than the one presented here, you might not need to create links.
Link type is required
To link documents from different types, you need to create a Link Type first, if the link type you need does not already exist in the PIM.
curl --location --request POST 'https://{{instance}}.quable.com/api/links' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer _api-token_' \
--data '{
"origin": {
"id": "TheDocumentIdentifier"
},
"target": {
"id": "TheAssetIdentifier"
},
"linkType": {
"id": "TheLinkTypeIdentifier"
},
"attributes": [],
"sequence": 1
}'
In case of success, the response will return a 201 created code.