# jsapiimpls

## Description

* Add one or more JS API implementation to a non-released native application version in a Cauldron &#x20;
* Generate and publish a new Container version &#x20;

## Syntax

`ern cauldron add jsapiimpls <jsapiimpls..>`

**Arguments**

`<jsapiimpls..>`

* One or more package path to JS API implementation(s) (delimited by spaces) to add to a target native application version in the Cauldron.
* The following types of JS API Implementation paths are not supported by this command :
  * File path (ex `file://Users/foo/JsApiImpl`)
  * Git path missing branch/tag or commit sha (ex: `https://github.com/foo/JsApiImpl.git`)
  * Registry path missing version (ex: `JsApiImpl`)
  * Registry path using a version range (ex: `JsApiImpl@^1.0.0`)

**Example**

`ern cauldron add jsapiimpls MyJsApiImplementation@1.0.0 MyOtherJsApiImplementation@2.0.0`

**Options**

`--containerVersion/-v <version>`

* Specify a version for the new container &#x20;
* **Default**  Incremental patch number of the current container version &#x20;

  Example: If the current container version is 1.2.3 and a version is not included in the command, the new container version will be 1.2.4. &#x20;

`--descriptor/-d <descriptor>`

* Add the JS API implementation(s) to a given target native application version in the Cauldron matching the provided native application descriptor. &#x20;
* You can only pass a complete native application descriptor as the JS API implementation(s) added through this command targets only a specific single native application version. &#x20;

  **Default**  Lists all non-released native application versions from the Cauldron and  prompts you to choose one to add to the JS API implementation. &#x20;

  **Example** `ern cauldron add jsapiimpls <jsapiimpls..> -d MyNativeApp:android:1.0.0` &#x20;

## Related commands

\[ern cauldron update jsappiimpls] | Updates the version of an existing JS API implementation

\[ern cauldron update jsappiimpls]: ../update/jsappiimpls.md
