StepZen CLI
The StepZen Command Line Interface (CLI) tool enables you to set up and manage StepZen using commands in your command-line shell.
After you have written or imported your GraphQL schema in the form of a Schema Definition Language (SDL) file, and defined your "configuration" in a YAML files, you can upload and deploy them to StepZen using the StepZen CLI - resulting in a live GraphQL endpoint.
Installing
npm install -g stepzen
Verifying your installation
To verify your CLI installation, use the stepzen --version
command:
$ stepzen (-v|--version|version)
Usage
$ npm install -g stepzen
$ stepzen COMMAND
running command...
$ stepzen (--version|-v)
stepzen/0.44.0 linux-x64 node-v18.20.4
$ stepzen --help [COMMAND]
USAGE
$ stepzen COMMAND
...
QA from cloned repo
To run from code: path-to-repo/bin/run start
(start or whatever command you're QAing)
Commands
-- OR (deprecated) --
$ stepzen deploy ENDPOINT --schema=schema [--configurationsets=cs1[,cs2[,..]]]`](#stepzen-deploy-endpoint---configpathtoconfigyaml---dirpathtoworkspace---or-deprecated----stepzen-deploy-endpoint---schemaschema---configurationsetscs1cs2)
stepzen delete ENDPOINT
Delete an endpoint from your StepZen account.
USAGE
$ stepzen delete [ENDPOINT] [-h] [--non-interactive]
ARGUMENTS
ENDPOINT name of the endpoint (e.g. api/customers)
FLAGS
-h, --help Show CLI help
--non-interactive Disable all interactive prompts
DESCRIPTION
Delete an endpoint from your StepZen account.
`stepzen deploy [ENDPOINT] [--config=path/to/config.yaml] [--dir=path/to/workspace]
-- OR (deprecated) --
$ stepzen deploy ENDPOINT --schema=schema [--configurationsets=cs1[,cs2[,..]]]`
Deploy to StepZen.
USAGE
$ stepzen deploy [ENDPOINT] [--config=path/to/config.yaml] [--dir=path/to/workspace]
-- OR (deprecated) --
$
stepzen deploy ENDPOINT --schema=schema [--configurationsets=cs1[,cs2[,..]]]
ARGUMENTS
ENDPOINT name of the endpoint (e.g. api/customers)
[default: use the endpoint property from stepzen.config.json]
FLAGS
-h, --help
Show CLI help
--config=path/to/config.yaml
[default: config.yaml] Configuration file to use (relative to the current directory)
--configurationsets=<value>
Name(s) of configuration sets uploaded earlier with stepzen upload
[DEPRECATED: this flag will be removed in future versions]
Instead, please use one of these options:
- stepzen deploy (without the --configurationsets flag)
to use the configuration from the config.yaml file in the current directory (if exists)
- stepzen deploy --config path/to/config.yaml
to explicitly specify the configuration file
--dir=<value>
Working directory
--non-interactive
Disable all interactive prompts
--schema=<value>
Name of a schema uploaded earlier with stepzen upload
[DEPRECATED: this flag will be removed in future versions]
Instead, please use one of these options:
- stepzen deploy (without the --schema flag)
to deploy the schema from a StepZen workspace in your current directory
- stepzen deploy --dir path/to/workspace
to deploy from a StepZen workspace in another folder
--silent
DESCRIPTION
Deploy to StepZen.
stepzen help [COMMANDS]
Display help for stepzen.
USAGE
$ stepzen help [COMMANDS] [-n]
ARGUMENTS
COMMANDS Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for stepzen.
See code: @oclif/plugin-help
stepzen import [SOURCE]
Import a schema for an external data source or an API endpoint into your GraphQL API.
USAGE
$ stepzen import [SOURCE] [-h] [--non-interactive] [--dir <value>]
ARGUMENTS
SOURCE kind of the data source: curl, graphql, mysql, postgresql, snowflake, db2, oracle (or a full DSN string)
FLAGS
-h, --help Show CLI help
--dir=<value> Working directory
--non-interactive Disable all interactive prompts
DESCRIPTION
Import a schema for an external data source or an API endpoint into your GraphQL API.
See more details with stepzen import [SOURCE] --help
stepzen import curl
Import a schema for a REST endpoint into your GraphQL API (uses the curl syntax).
USAGE
$ stepzen import curl [-h] [--non-interactive] [--dir <value>] [--name <value>] [--prefix <value>] [-H <value>]
[--header-param <value>] [--query-name <value>] [--query-type <value>] [--path-params <value>]
FLAGS
-H, --header=<value>...
Specifies a request header to pass
Example:
stepzen import curl https://example.com/api/customers \
-H "Authorization: apikey SecretAPIKeyValue"
-h, --help
Show CLI help
--dir=<value>
Working directory
--header-param=<value>...
Specifies a parameter in a header value. Can be formed by taking a -H, --header flag and replacing the variable part
of the header value with a $paramName placeholder. Repeat this flag once for each header with a parameter.
Example:
stepzen import curl https://example.com/api/customers \
-H "Authorization: apikey SecretAPIKeyValue" \
--header-param 'Authorization: apikey $apikey'
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
--path-params=<value>
Specifies path parameters in the URL path. Can be formed by taking the original path and replacing the variable
segments with $paramName placeholders.
Example:
stepzen import curl https://example.com/users/jane/posts/12 --path-params '/users/$userId/posts/$postId'
--prefix=<value>
Prefix to add to every type in the generated schema
--query-name=<value>
Property name to add to the Query type as a way to access the imported endpoint
--query-type=<value>
Name for the type returned by the curl request in the generated schema. The name specified by --query-type is not
prefixed by --prefix if both flags are present.
DESCRIPTION
Import a schema for a REST endpoint into your GraphQL API (uses the curl syntax).
stepzen import curl automatically introspects a REST endpoint, generates a GraphQL schema for accessing this endpoint
through a StepZen API, and adds the generated types and a query field into your GraphQL schema.
stepzen import db2 [DSN]
Import a schema for a Db2 data source into your GraphQL API.
USAGE
$ stepzen import db2 [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-schema <value>] [--db-link-types]
[--db-include tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming] [--ssl-connection]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a Db2 database.
Example: 'jdbc:db2://host:port/db:user=username;password=password;schema=schema;sslConnection=true/false;'
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-schema=<value>
Database schema to import tables from (default: public)
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
--ssl-connection
Is SSL enabled?
DESCRIPTION
Import a schema for a Db2 data source into your GraphQL API.
stepzen import db2 automatically introspects a Db2 database, generates a GraphQL schema for accessing this database
through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.
stepzen import flow [FLOW]
Import StepZen flow expression as a query field into your GraphQL API.
USAGE
$ stepzen import flow [FLOW] [-h] [--non-interactive] [--dir <value>] [--name <value>] [-H <value> --endpoint
<value>]
FLAGS
-H, --header=<value>... Specifies a request header to pass
Example:
stepzen import curl https://example.com/api/customers \
-H "Authorization: apikey SecretAPIKeyValue"
-h, --help Show CLI help
--dir=<value> Working directory
--endpoint=<value> Use a custom GraphQL schema instead of the project's schema as the schema providing the steps
in the flow.
--name=<value> Subfolder inside the workspace folder to save the imported schema files to. Defaults to the
name of the imported schema.
--non-interactive Disable all interactive prompts
DESCRIPTION
Import StepZen flow expression as a query field into your GraphQL API.
stepzen import flow automatically introspects a GraphQL endpoint and adds a @sequence implementing the given flow
expression into your GraphQL schema.
stepzen import graphql [URL]
Import a GraphQL API as a subgraph into your GraphQL API.
USAGE
$ stepzen import graphql [URL] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--prefix <value>] [-H
<value>] [--header-param <value>]
FLAGS
-H, --header=<value>...
Specifies a request header to pass
Example:
stepzen import curl https://example.com/api/customers \
-H "Authorization: apikey SecretAPIKeyValue"
-h, --help
Show CLI help
--dir=<value>
Working directory
--header-param=<value>...
Specifies a parameter in a header value. Can be formed by taking a -H, --header flag and replacing the variable part
of the header value with a $paramName placeholder. Repeat this flag once for each header with a parameter.
Example:
stepzen import curl https://example.com/api/customers \
-H "Authorization: apikey SecretAPIKeyValue" \
--header-param 'Authorization: apikey $apikey'
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
--prefix=<value>
Prefix to add to every type in the generated schema
DESCRIPTION
Import a GraphQL API as a subgraph into your GraphQL API.
stepzen import graphql automatically introspects a GraphQL endpoint and merges the types, queries, mutations and
subscriptions for accessing this endpoint through a StepZen API into your GraphQL schema.
stepzen import mysql [DSN]
Import a schema for a MySQL data source into your GraphQL API.
USAGE
$ stepzen import mysql [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-link-types] [--db-include
tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a MySQL database.
Example: mysql://user:password@host:port/database
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
DESCRIPTION
Import a schema for a MySQL data source into your GraphQL API.
stepzen import mysql automatically introspects a MySQL database, generates a GraphQL schema for accessing this
database through a StepZen API, and merges the generated types, queries and mutations into your into your GraphQL
schema.
ALIASES
$ stepzen import singlestore
stepzen import oracle [DSN]
Import a schema for a oracle data source into your GraphQL API.
USAGE
$ stepzen import oracle [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-schema <value>] [--db-link-types]
[--db-include tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of an Oracle database.
Example: 'jdbc:oracle:thin:user/password@//host:port/db?currentschema=schema'
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-schema=<value>
Database schema to import tables from (default: public)
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
DESCRIPTION
Import a schema for a oracle data source into your GraphQL API.
stepzen import oracle automatically introspects an Oracle database, generates a GraphQL schema for accessing this
database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.
stepzen import postgres [DSN]
Import a schema for a PostgreSQL data source into your GraphQL API.
USAGE
$ stepzen import postgres [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-schema <value>] [--db-link-types]
[--db-include tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a PostgreSQL database.
Example: postgresql://user:password@host:port/database?schema=schema
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-schema=<value>
Database schema to import tables from (default: public)
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
DESCRIPTION
Import a schema for a PostgreSQL data source into your GraphQL API.
stepzen import postgresql automatically introspects a PostgreSQL database, generates a GraphQL schema for accessing
this database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.
ALIASES
$ stepzen import postgres
stepzen import postgresql [DSN]
Import a schema for a PostgreSQL data source into your GraphQL API.
USAGE
$ stepzen import postgresql [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-schema <value>] [--db-link-types]
[--db-include tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a PostgreSQL database.
Example: postgresql://user:password@host:port/database?schema=schema
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-schema=<value>
Database schema to import tables from (default: public)
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
DESCRIPTION
Import a schema for a PostgreSQL data source into your GraphQL API.
stepzen import postgresql automatically introspects a PostgreSQL database, generates a GraphQL schema for accessing
this database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.
ALIASES
$ stepzen import postgres
stepzen import singlestore [DSN]
Import a schema for a MySQL data source into your GraphQL API.
USAGE
$ stepzen import singlestore [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-host <value>]
[--db-user <value>] [--db-password <value>] [--db-database <value>] [--db-link-types] [--db-include
tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a MySQL database.
Example: mysql://user:password@host:port/database
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-host=<value>
Database host and optional port (as HOST[:PORT])
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
DESCRIPTION
Import a schema for a MySQL data source into your GraphQL API.
stepzen import mysql automatically introspects a MySQL database, generates a GraphQL schema for accessing this
database through a StepZen API, and merges the generated types, queries and mutations into your into your GraphQL
schema.
ALIASES
$ stepzen import singlestore
stepzen import snowflake [DSN]
Import a schema for a Snowflake data source into your GraphQL API.
USAGE
$ stepzen import snowflake [DSN] [-h] [--non-interactive] [--dir <value>] [--name <value>] [--db-user <value>]
[--db-password <value>] [--db-database <value>] [--db-schema <value>] [--db-link-types] [--db-include
tables-only|views-only|tables-and-views] [--db-use-deprecated-2022-naming] [--snowflake-account-id <value>]
[--snowflake-warehouse <value>]
ARGUMENTS
DSN (optional) Data Source Name (DSN) of a Snowflake database.
Example: snowflake://user:password@orgname-accountname/database?warehouse=warehouse&schema=schema
Flags, such as --db-host, override the corresponding parts of the DSN (if both are provided).
FLAGS
-h, --help
Show CLI help
--db-database=<value>
Name of database to import
--db-include=<option>
Should the generated GraphQL schema be based only on database views, only on tables or on both
<options: tables-only|views-only|tables-and-views>
--db-link-types
Automatically link types based on foreign key relationships using @materializer
(https://stepzen.com/docs/features/linking-types)
--db-password=<value>
Database password
--db-schema=<value>
Database schema to import tables from (default: PUBLIC)
--db-use-deprecated-2022-naming
Use the deprecated pre-2023 naming convention in the generated GraphQL schema:
- the generated type and property names are auto-capitalized into PascalCase
- the generated field names use the getCustomer and getCustomerList style.
On the other hand, when using the default naming convention:
- the generated type and property names match exactly the DB table and column names
- the generated field names use the customer and customerList style.
--db-user=<value>
Database user name
--dir=<value>
Working directory
--name=<value>
Subfolder inside the workspace folder to save the imported schema files to. Defaults to the name of the imported
schema.
--non-interactive
Disable all interactive prompts
--snowflake-account-id=<value>
Snowflake account identifier in the orgname-accountname format. For more information, see the Snowflake
documentation at https://docs.snowflake.com/en/user-guide/admin-account-identifier.html.
--snowflake-warehouse=<value>
Snowflake warehouse
DESCRIPTION
Import a schema for a Snowflake data source into your GraphQL API.
stepzen import snowflake automatically introspects a Snowflake database, generates a GraphQL schema for accessing this
database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.
stepzen init
Initialize a StepZen workspace in the current directory.
USAGE
$ stepzen init [DIRECTORY] [-h] [--non-interactive] [--endpoint <value>] [--yes]
FLAGS
-h, --help Show CLI help
--endpoint=<value> Endpoint name (e.g. api/myapp)
--non-interactive Disable all interactive prompts
--yes Accept default answers to interactive prompts
DESCRIPTION
Initialize a StepZen workspace in the current directory.
stepzen list [TYPE]
List endpoints, schemas and configuration sets in your StepZen account.
USAGE
$ stepzen list [TYPE] [-h] [--non-interactive] [--folder <value>] [--name <value>]
ARGUMENTS
TYPE
(endpoints|configurationsets|schemas) [default: endpoints]
The type of entities to list:
endpoints - GraphQL API endpoints deployed with stepzen deploy (or stepzen start)
schemas [DEPRECATED] - StepZen schemas uploaded with stepzen upload (or stepzen start)
configurationsets [DEPRECATED] - StepZen configuration sets uploaded with stepzen upload (or stepzen start)
FLAGS
-h, --help Show CLI help
--folder=<value> Filter the list to only show endpoints within a specific folder. example usage --folder folder_name
or --folder !folder_name
--name=<value> Filter the list to only show endpoints with a specific name. example usage --name endpoint_name or
--name '!endpoint_name'
--non-interactive Disable all interactive prompts
DESCRIPTION
List endpoints, schemas and configuration sets in your StepZen account.
All timestamps displayed by stepzen list endpoints are in your local time zone.
stepzen login [DOMAIN]
Log in to StepZen.
USAGE
$ stepzen login [DOMAIN] [-h] [--non-interactive] [-a <value> | | --public] [-k <value> | | ]
[--introspection <value>]
ARGUMENTS
DOMAIN Domain of the StepZen service to login to (e.g. us-east-a.ibm.stepzen.net or eu-central-a.ibm.stepzen.net). If
no domain is provided, stepzen.net is used by default. Check you domain from the StepZen Dashboard.
FLAGS
-a, --account=<value> StepZen account name (copy from https://stepzen.com/account). If not provided, the CLI
prompts the users to enter one.
-h, --help Show CLI help
-k, --adminkey=<value> Admin key (copy from https://stepzen.com/account) If not provided, the CLI prompts the users
to enter one.
--introspection=<value> Override the default StepZen introspection service URL for all stepzen import commands. If
not provided, use the default introspection URL.
Example:
stepzen login --introspection stepzen-introspection.mydomain.com
--non-interactive Disable all interactive prompts
--public Create a public anonymous StepZen account and use it. This is handy for trying StepZen out,
but it not suitable for handling private data as all endpoints created with a public account
will be public.
DESCRIPTION
Log in to StepZen.
stepzen logout
Log out of StepZen.
USAGE
$ stepzen logout [-h] [--non-interactive]
FLAGS
-h, --help Show CLI help
--non-interactive Disable all interactive prompts
DESCRIPTION
Log out of StepZen.
stepzen request [QUERY]
Send a GraphQL request to a StepZen endpoint and print the response, using the API key and the target endpoint from the current StepZen workspace.
USAGE
$ stepzen request [QUERY] [-h] [--non-interactive] [--dir <value> | --endpoint <value>] [-H <value>]
[--operation-name <value>] [--var <value>] [--var-file <value>] [-f <value>]
ARGUMENTS
QUERY GraphQL query (could include a query, a mutation or a subscription).
This argument is required unless you provide the query as a file with --file=file.
FLAGS
-H, --header=<value>...
Add an additional HTTP header to the request. This is useful for schemas where @rest or @graphql directives enable
header forwarding with forwardheaders.
Example:
stepzen request '{ user(id: "u123") { email } }' \
-H "X-API-Token: SecretAPIToken"
Use the -H "Header-Name:" syntax to drop a default header, and the -H "Header-Name;" syntax to send a header with an
empty value.
-f, --file=<value>
Read the query text from a file instead of the command line.
Example:
stepzen request -f query.graphql
-h, --help
Show CLI help
--dir=<value>
StepZen workspace directory (defaults to the current directory)
--endpoint=<value>
StepZen endpoint to call (defaults to the endpoint in current StepZen workspace)
--non-interactive
Disable all interactive prompts
--operation-name=<value>
Specify the operation name (in case if the provided query includes multiple operations)
--var=<value>...
Add a request variable, in the name=value format.
Example:
stepzen request 'query OrdersQuery($search: String!, $limit: Int) {
orders(search: $search, limit: $limit) { id createdAt }
}' \
--var 'search=space ninja' \
--var limit=5
--var-file=<value>
Read request variables from a JSON file. In case when the same variable value is provided both via --var-file and
--var, the priority is given to the latter.
Example:
stepzen request 'query OrdersQuery($search: String!, $limit: Int) {
orders(search: $search, limit: $limit) { id createdAt }
}' \
--var-file ./vars.json
DESCRIPTION
Send a GraphQL request to a StepZen endpoint and print the response, using the API key and the target endpoint from
the current StepZen workspace.
stepzen service [ACTION]
Manage the local StepZen service instance (requires Docker).
USAGE
$ stepzen service [ACTION] [-h] [--non-interactive] [--dsn <value> | --reset-auto | --prompt] [--port
<value>]
ARGUMENTS
ACTION
(start|stop|upgrade)
start start a local StepZen service instance in a Docker container
This command pulls the latest StepZen service instance Docker image so that the
version of StepZen you run locally is the same as the one running on
stepzen.net.
stop stop the local StepZen service instance (if running)
This command deletes the Docker container with the StepZen service instance,
but all your endpoints are persistently stored in the metadata database. They
remain available when running stepzen service start next time.
upgrade upgrade the local StepZen service instance if it is running
This command checks if a newer version of the StepZen service instance Docker
image is available, and if it is then stops and deletes the currently running
container, pulls the latest image, and starts it. All endpoints are preserved.
If no action is provided, print the service status and exit.
FLAGS
-h, --help Show CLI help
--dsn=<value> DSN of a StepZen metadata database, e.g. postgres://user:password@172.17.0.1:5432/zenctl
--non-interactive Disable all interactive prompts
--port=<value> Override the TCP port on which the local StepZen service instance will listen for connections (port
9000 by default).
--prompt Opens an interactive prompt to ask for database details (or fails, if running in a non-interactive
mode).
--reset-auto Create fresh empty metadata database. Note: all existing endpoints will be deleted and you will be
logged out.
DESCRIPTION
Manage the local StepZen service instance (requires Docker).
You can use a local StepZen service instance instead of the StepZen cloud to develop and test GraphQL endpoints
locally. This way you can try StepZen out without giving the StepZen cloud access to your data sources and API
endpoints.
Local StepZen service instances are not suitable for production use. Please refer to the documentation at
https://stepzen.com/docs/deployment/local-docker for more information and examples.
stepzen start
Deploy your schema to StepZen, and then redeploy on every change.
USAGE
$ stepzen start [-h] [--non-interactive] [--dir <value>] [--endpoint <value>] [--dashboard
web|local|none] [--port <value>]
FLAGS
-h, --help
Show CLI help
--dashboard=<option>
Which GraphiQL dashboard to use to explore the deployed endpoint.
- web [default]: use GraphiQL at dashboard.stepzen.com
- local: start a local GraphiQL dashboard on localhost:5001 (change the port with the --port flag)
- none: do not use GraphiQL at all
<options: web|local|none>
--dir=<value>
Working directory
--endpoint=<value>
Override workspace endpoint
--non-interactive
Disable all interactive prompts
--port=<value>
[default: 5001] Port for the local GraphiQL dashboard (when using --dashboard=local)
DESCRIPTION
Deploy your schema to StepZen, and then redeploy on every change.
stepzen upload TYPE DESTINATION
[DEPRECATED] Upload a schema or a configuration set to StepZen.
USAGE
$ stepzen upload [TYPE] [DESTINATION] [-h] [--non-interactive] [--dir <value> | --file <value>] [--silent]
ARGUMENTS
TYPE (configurationset|schema) type
DESTINATION destination
FLAGS
-h, --help Show CLI help
--dir=<value> A directory to upload
--file=<value> A file to upload
--non-interactive Disable all interactive prompts
--silent
DESCRIPTION
[DEPRECATED] Upload a schema or a configuration set to StepZen.
stepzen upload is deprecated in favor of stepzen deploy
StepZen CLI is moving away from a two-step "upload" + "deploy" flow to a single-step "deploy" flow.
stepzen version
USAGE
$ stepzen version [--json] [--verbose]
FLAGS
--verbose Show additional information about the CLI.
GLOBAL FLAGS
--json Format output as json.
FLAG DESCRIPTIONS
--verbose Show additional information about the CLI.
Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.
See code: @oclif/plugin-version
stepzen whoami
View your StepZen credentials.
USAGE
$ stepzen whoami [-h] [--non-interactive] [--showkeys | --account | --adminkey | --apikey | --domain]
FLAGS
-h, --help Show CLI help
--account
--adminkey
--apikey
--domain
--non-interactive Disable all interactive prompts
--showkeys
DESCRIPTION
View your StepZen credentials.