Summary: step-by-step instructions for manually updating CAST Extend local server with new content.


CAST Extend local server is delivered "empty" without any preconfigured extensions and in normal functioning mode, extensions will be automatically downloaded from CAST Extend when requested by AIP Console or Extension Downloader. However, you can also populate CAST Extend local server with specific extensions manually should you need to.

The process of updating is as follows:

When CAST Extend local server is updated with a new bundle of extensions and extensions have already been added, a "merge" is actioned, rather than a "delete and add". This means that no extensions are ever removed, i.e.:

When an .extarchive is uploaded, the packages are stored by default in:


The ability to create a bundle using the live CAST Extend website is no longer supported. You must use ExtendCli.

Update process

Creating the bundle (.extarchive file)

See ExtendCli for more detailed information. If you want to simply add all "product", "user community" and "labs" extensions to a bundle (.extarchive file), you can use the following commands:

ExtendCli.exe config set api-key <YOUR API KEY>
ExtendCli.exe bundle clear
ExtendCli.exe bundle template add product
ExtendCli.exe bundle template add community
ExtendCli.exe bundle template add labs
Extendcli.exe bundle pack -o <Folder path>

Or alternatively, you can add specific extensions:

ExtendCli.exe config set api-key <YOUR API KEY>
ExtendCli.exe bundle clear
ExtendCli.exe bundle add com.castsoftware.html5
ExtendCli.exe bundle add com.castsoftware.jee
ExtendCli.exe bundle add com.castsoftware.dotnet
Extendcli.exe bundle pack -o <Folder path>

Upload the bundle to CAST Extend local server

Note that the upload will fail if a manifest synchronization is currently ongoing on your CAST Extend local server. This synchronization occurs by default every two hours and can be triggered manually. You can check whether a synchonization is taking place using the Admin Center in the Extend Local server, see Manage CAST Extend local server via Administration Center.

Via CAST Console

This method has been removed in Console ≥ 2.5.

If you are using CAST Extend local server with CAST Console, the process of updating CAST Extend local server is handled automatically by CAST Console. Login to CAST Console with a user account that already has the Admin role and switch to the Admin Center:

Now move to the Administration Center - System Settings panel and expand the CAST Extend option:

Click to enlarge

Drag and drop your downloaded bundle in to the options screen, or click the button to choose the .extarchive file directly. The bundle will then be uploaded and added to CAST Extend local server automatically and all new extensions added to the bundle will be available immediately.

Via the CAST Extend local server GUI

Starting v. ≥ 1.1.0, CAST Extend local server has its own GUI which you can use to upload the .extarchive file. See Manage CAST Extend local server via Administration Center for more information about this.

Via the CAST Extend local server built in API and curl

CAST Extend local server has a built in API that can be accessed in a manner of ways. It is therefore possible to upload a new bundle using the api/synchronization/bundle/upload API, for example with curl:

curl -V -H "x-cxproxy-apikey:<APIKEY>" -F "data=@path_to_file.extarchive" http://<server>:<port>/api/synchronization/bundle/upload

-VEnsures that the output generated by curl is in verbose mode (helps for debugging requirements).
-H This option defines an extra header to include in the request when sending HTTP to a server. In the case of CAST Extend local server, this is used to send the APIKEY value to allow access. See

The APIKEY that grants access to Extend local server. The APIKEY value is displayed at the end of the CAST Extend local server installation process. Alternatively you can find the APIKEY value in the following location on the server on which CAST Extend local server is installed:

≥ 2.0.0-funcrel
≤ 1.3.0-funcrel

The key is located on the line APIKEY:

	"PORT": 8085,
	"STORAGE_DIR": "c:/ProgramData/CAST/Extend",
	"PACKAGE_DIR": null,
	"LOG_DIR": "C:/Program Files/CAST/Extend/logs",
	"PUBLIC_URL": "http://WIN10TEST:8085/",
	"EXTEND_URL": "",
	"APIKEY": "<api_key>",
	"ADMI": "admi194c45b7d34a12adb81df7838b66e127e280838b2585276604865460316d6813353000e1b800c50e3d2cd6b2740bf47a99568c70ca52424c77f7d5a2b8016b810",
	"SYNC_TYPE": "auto"

-FThis causes curl to POST data using the Content-Type multipart/form-data. See
path_to_file.extarchiveThe path to the .extarchive bundle file. Replace this with your 

Forms the URL to your on premises CAST Extend local server. For example:

  • <server>: the local server on which CAST Extend local server is installed.
  • <port>: the port number which CAST Extend local server runs on. This is determined during the installation (default port number is set to 8085).
  • API: use the api/synchronization/bundle/upload URL

For example:

curl -V -H "x-cxproxy-apikey:<api_key>" -F "data=@D:\downloads\b2b430df976c412ca29e799fff0fd86e.extarchive" http://WIN10TEST:8085/api/synchronization/bundle/upload

Refresh the CAST Console extensions cache

The final step in the update process is to ensure that the CAST Console extension cache (a dynamic record of all available extensions) is refreshed. If you do not do this, you may find that CAST Console does not immediately offer your uploaded extension(s) in the Available tab of the Application - Extensions panel. There are two ways to refresh this cache:

Option 1 - Restart all Nodes

Ensure you restart all Nodes that are currently configured in CAST Console. CAST recommends using this method where possible.

Option 2 - Update the CAST Extend settings in CAST Console

Click the Save button (do not make any changes to the configuration). This option may still have a delay of a few minutes: