Expand my Community achievements bar.

July 31st AEM Gems Webinar: Elevate your AEM development to master the integration of private GitHub repositories within AEM Cloud Manager.

Upload GIF image into dam programmatically AEM


Level 2


I'm trying to upload external gif image programmatically using com.day.cq.dam.api.AssetManager api but it is not working as expected. i'm able to upload external jpg and png images.

example : Fat Cat Success GIF - Find & Share on GIPHY

For above gif content type is html not gif  is that is the issue?.

Can anyone help me with this, please?



4 Replies


Community Advisor


For me below code is working for jpeg and gif.

aem63app-repo/UploadAssets.java at master · arunpatidar02/aem63app-repo · GitHub

I am succesfully able to upload gif and used in page as well.

for image you've share is video, not an gif. You can try Busy Chis Sweet Home GIF - Find & Share on GIPHY

Screen Shot 2018-08-07 at 2.52.35 PM.png


Arun Patidar


Level 9


Can you tell us what is not working as per your expectation? Does post request not go through? Any error log you see in the response?


Level 1

Hi please try this it worked for me

Map<String, Object> param = new HashMap<>();
param.put(ResourceResolverFactory.SUBSERVICE, "aemuser");
ResourceResolver resolver = resolverFactory.getServiceResourceResolver(param);

String imageUrl = "https://lh4.googleusercontent.com/cjh5t_mnSYuW_RnVI922M9kjxW8leJGp8nCwWdBjOQxz_RzNkuvVIHaxzDrZ-neDiF...";
URL url = new URL(imageUrl);
InputStream is = url.openStream();
AssetManager assetMgr = resolver.adaptTo(AssetManager.class);
String newFile = "/content/dam/folderpath/1gi_NJv844BNNRwBXzN5ccgOgnVPHqnh6.jpg";
assetMgr.createAsset(newFile, is, "image/jpeg", true);// mention  meme type for me it is jpeg