Skip to content

AEM cURL Commands

DISCLAIMER:

This is just a custom guide on https://skydevops.co.in, this could be more technical and advanced guide, if you do not understand or don’t know what you are doing, I kindly request you to take extreme caution. The components used on https://skydevops.co.in might be billable. SKYDEVOPS/I/WE do not take any responsibility if the guide causes any serious damage or issues, which you have to take full responsibility.

Following are few useful cURL commands, categorised as below;

  • User Management Commands
  • Package Management Commands
  • OSGi Bundle Management Commands
  • JCR Query Builder Commands
  • Backup Commands
  • JCR Node Management Commands
  • Replication Commands
  • Page Management Commands
  • Other useful commands 

USER MANAGEMENT COMMANDS:

 $ curl -u admin:admin -FcreateUser= -FauthorizableId=skydevops-Frep:password=skydevops http://localhost:4502/libs/granite/security/post/authorizables 
 $ curl -u admin:admin -FcreateUser= -FauthorizableId=testuser -Frep:password=testuser -FintermediatePath="/home/users/test/" http://localhost:4502/libs/granite/security/post/authorizables 
 $ curl -u admin:admin -FcreateGroup=testgroup -FauthorizableId=testGroup http://localhost:4502/libs/granite/security/post/authorizables 
 $ curl -u admin:admin -Fprofile/age=30 http://localhost:4502/home/users/a/skydevops.rw.html 
 $ curl -u admin:admin -FcreateUser=testuser -FauthorizableId=skydevopsa -Frep:password=skydevops -Fprofile/gender=male http://localhost:4502/libs/granite/security/post/authorizables 
 $ curl -u admin:admin -FcreateUser=testuser -FauthorizableId=testuser -Frep:password=abcd123 -Fmembership=contributor http://localhost:4502/libs/granite/security/post/authorizables 
 $ curl -u admin:admin -FaddMembers=testuser http://localhost:4502/home/groups/t/testGroup.rw.html 
 $ curl -u admin:admin -FremoveMembers=testuser http://localhost:4502/home/groups/t/testGroup.rw.html 
 $ curl -u admin:admin -Fmembership=contributor -Fmembership=testgroup http://localhost:4502/home/users/t/testuser.rw.html 
 $ curl -u admin:admin -FdeleteAuthorizable= http://localhost:4502/home/users/t/testuser
curl -u admin:admin -FdeleteAuthorizable= http://localhost:4502/home/groups/t/testGroup 
 $ curl -u testuser:OLD_PWD -F rep:password="NEW_PWD" http://localhost:4502/home/users/t/testuser.rw.html
curl rep:password="test" –user admin:admin http://localhost:4502/home/users/a/[email protected] 

PACKAGE MANAGEMENT COMMANDS:

 $ curl -u admin:admin http://localhost:4502/crx/packmgr/service.jsp?cmd=ls 
 $ curl -u admin:admin -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/samplepackage.zip?cmd=build 
 $ curl -u admin:admin -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/samplepackage.zip?cmd=delete 
 $ curl -u admin:admin -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/samplepackage.zip?cmd=install 
 $ curl -u admin:admin -X POST http://localhost:4502/crx/packmgr/service/.json/etc/packages/my_packages/samplepackage.zip?cmd=uninstall 
 $ curl -u admin:admin http://localhost:4502/etc/packages/my_packages/samplepackage.zip > 
 $ curl -u admin:admin -F file=@"C:samplesamplepackage.zip" -F name="samplepackage" -F force=true -F install=false http://localhost:4502/crx/packmgr/service.jsp 
 $ curl -u admin:admin -F file=@"C:samplesamplepackage.zip" -F name="samplepackage" -F force=true -F install=true http://localhost:4502/crx/packmgr/service.jsp 

OSGI BUNDLE MANAGEMENT:

 $ curl -u admin:admin -F bundleHome=/apps/training/src/com.day.sample -F descriptor=/apps/training/src/com.day.sample/com.day.sample.bnd http://localhost:4502/libs/crxde/build 
 $ curl -u admin:admin http://localhost:4502/system/console/bundles/com.day.sample -Faction=start 
 $ curl -u admin:admin http://localhost:4502/system/console/bundles/com.day.sample -Faction=stop 
 $ curl -u admin:admin -F action=install -F bundlestartlevel=20 -F bundlefile=@"" http://localhost:4502/system/console/bundles 

JCR QUERY BUILDER:

 $ curl -s -u admin:admin GET "http://localhost:4502/bin/querybuilder.json?path=%2fcontent%2fgeometrixx%2fen&property=fileReference&property.value=%2fcontent%2fdam%2fgeometrixx%2fshapes%2ftri_equilateral.png&type=nt%3aunstructured" 

BACKUP COMMANDS:

 $ curl -u admin:admin -X POST http://localhost:4502/system/console/jmx/com.adobe.granite%3Atype%3DRepository/op/startBackup/java.lang.String?target=C:sampleFolderbackupTest.zip 
 $ curl -u admin:admin -X POST http://localhost:4502/libs/granite/backup/content/admin/backups.cancel.html 

JCR NODE MANAGEMENT COMMANDS:

 $ curl -X DELETE http://localhost:4502/content/geometrixx/en/products/jcr:content/par/flash -u admin:admin 
 $ curl --data jcr:primaryType=nt:unstructured --user admin:admin http://localhost:4502/content/geometrixx/en/toolbar/testNode 

REPLICATION COMMANDS:

 $ curl -u admin:admin -X POST -F path="/content/geometrixx/en/pag" -F cmd="activate" http://localhost:4502/bin/replicate.json 
 $ curl -u admin:admin -X POST -F path="/content/geometrixx/en/pag" -F cmd="deactivate" http://localhost:4502/bin/replicate.json 
 $ curl -u admin:admin -F cmd=activate -F ignoredeactivated=true -F onlymodified=true -F path=/content/geometrixx/en/community http://localhost:4502/etc/replication/treeactivation.html 

PAGE MANAGEMENT COMMANDS:

 $ curl -u admin:admin -X POST -F cmd="lockPage" -F path="/content/geometrixx/en/toolbar/contacts" -F "_charset_"="utf-8" http://localhost:4502/bin/wcmcommand 
 $ curl -u admin:admin -X POST -F cmd="unlockPage" -F path="/content/geometrixx/en/toolbar/contacts" -F "_charset_"="utf-8" http://localhost:4502/bin/wcmcommand 
 $ curl -u admin:admin -F:operation=copy -F:dest=/content/geometrixx/en/products/contacts http://localhost:4502/content/geometrixx/en/toolbar/contacts 

OTHER USEFUL COMMANDS:

 $ curl -u admin:admin -X POST http://localhost:4502/system/console/jmx/com.adobe.granite:type=Repository/op/runDataStoreGarbageCollection/java.lang.Boolean 
 $ curl -u admin:admin -X POST http://localhost:4502/system/console/jmx/com.adobe.granite:type=Repository/op/startTarOptimization/ 
 $ curl -H "CQ-Action: Flush" -H "CQ-Handle: /content/geometrixx/en/products" -H "CQ-Path:/content/geometrixx/en/products" -H "Content-Length: 0" -H "Content-Type: application/octet-stream" http://dispatcher-server-hostname:port/dispatcher/invalidate.cache 

Shashi View All

A passionate devops and automation engineer

Leave a comment