FusionAuth CLI
npm install @fusionauth/cliThe FusionAuth CLI is a command line tool for interacting with FusionAuth. It is written in Typescript and is available as an NPM package.
* A modern version of node (tested on 19, 20 and 22)
* A FusionAuth instance (download it here: https://fusionauth.io/download)
To install and use @fusionauth/cli, run the following commands:
``bash`
npm i @fusionauth/cli;
npx fusionauth --help;
You can install it globally for ease of use from anywhere, but global installations can potentially lead to conflicts and are not recommended:
`bash`
npm i -g @fusionauth/cli;
fusionauth --help;
Currently, the CLI supports the following commands:
- Common config check
- fusionauth check:common-config - Checks to make sure common configuration settings are set.fusionauth email:download
- Emails
- - Download a specific template or all email templates from a FusionAuth server.fusionauth email:duplicate
- - Duplicate an email template locally.fusionauth email:html-to-text
- - Convert HTML email templates to text, where the text template is missing.fusionauth email:upload
- - Upload a specific template or all email templates to a FusionAuth server.fusionauth email:watch
- - Watch the email template directory and upload changes to a FusionAuth server.fusionauth email:create
- - Create a new email template locally.fusionauth import:generate
Fake user generation
- - Generate JSON for importing fake users for testing.fusionauth lambda:update
- Lambdas
- - Update a lambda on a FusionAuth server.fusionauth lambda:delete
- - Delete a lambda from a FusionAuth server.fusionauth lambda:retrieve
- - Download a lambda from a FusionAuth server.fusionauth message:download
- Messages
- - Download a specific message template or all message templates from a FusionAuth server.fusionauth message:upload
- - Upload a specific message template or all message templates to a FusionAuth server.fusionauth theme:download
- Themes
- - Download a theme from a FusionAuth server.fusionauth theme:upload
- - Upload a theme to a FusionAuth server.fusionauth theme:watch
- - Watch a theme directory and upload changes to a FusionAuth server.
Instead of supplying the API key with the -k option on every command, you can set the FUSIONAUTH_API_KEY environment variable.-h
The same goes for the host URL option , which can be set with the FUSIONAUTH_HOST environment variable.
The download and retrieve commands will succeed even if there are no templates or lambdas to retrieve.
If you have a question or support issue regarding this client library, we'd love to hear from you.
If you have a paid edition with support included, please open a ticket in your account portal. Learn more about paid editions here.
Otherwise, please post your question in the community forum.
1. Run the release script from the main branch:
`bash`
./scripts/release.sh patch # or minor, major
2. Create a Pull Request from the release branch to main.
3. After the PR is merged, tag the release, make sure they match:
`bash`
./scripts/tag-release.sh
4. The GitHub Action will automatically build and publish to npm when the tag is pushed.
Bug reports and pull requests are welcome on GitHub.
To build this library locally:
`bash
git clone https://github.com/FusionAuth/fusionauth-node-cli &&
cd fusionauth-node-cli;
npm install &&
npm run build;
To see examples of use: https://fusionauth.io/docs/extend/code/lambdas/testing
If you run this multiple times in a row against a local instance, the number of admin users may be incorrect until you re-index. See this issue for more.
This code is available as open source under the terms of the Apache v2.0 License.