CLI reference
Schema
List, validate, extract, and deploy schema.
Available commands
usage: npx sanity schema [--default] [-v|--version] [-d|--debug] [-h|--help] <command> [<args>] Commands: delete Delete schemas by their IDs. deploy Deploy schemas into workspace datasets. extract Extracts a JSON representation of a Sanity schema within a Studio context. list Lists all schemas in the current dataset. validate Validates all schema types specified in a workspace. See 'sanity help schema <command>' for specific information on a subcommand.
Delete a schema
usage: npx sanity schema delete Delete schemas by their IDs. Options --ids <schema_id_1,schema_id_2,...> comma-separated list of schema IDs to delete --dataset <dataset_name> delete schemas from a specific dataset --manifest-dir <directory> directory containing your manifest file if it's not in the default location --no-extract-manifest disables manifest generation – the command will fail if no manifest exists Examples # Delete single schema sanity schema delete --ids <schema_id> # Delete multiple schemas sanity schema delete --ids <schema_id_1,schema_id_2,...>
Deploy schemas
usage: npx sanity schema deploy Deploy schemas into workspace datasets. Options: --workspace <workspace_name> deploy schema for a specific workspace --manifest-dir <directory> directory containing your manifest file if it's not in the default location --no-extract-manifest disables manifest generation – the command will fail if no manifest exists --id-prefix <prefix> add a prefix to the schema ID --schema-required fail if schema file is not found --verbose print detailed information during store Examples # if no options are provided all workspace schemas will be deployed sanity schema deploy # Deploy the schema for only the workspace 'default' sanity schema deploy --workspace default
Extract a schema
usage: npx sanity schema extract Extracts a JSON representation of a Sanity schema within a Studio context. **Note**: This command is experimental and subject to change. Options --workspace <name> The name of the workspace to generate a schema for --path Optional path to specify destination of the schema file --enforce-required-fields Makes the schema generated treat fields marked as required as non-optional. Defaults to false. --format=[groq-type-nodes] Format the schema as GROQ type nodes. Only available format at the moment. Examples # Extracts schema types in a Sanity project with more than one workspace sanity schema extract --workspace default
List schemas
usage: npx sanity schema list Lists all schemas in the current dataset. Options --json get schemas as json --id <schema_id> fetch a specific schema by its ID --manifest-dir <directory> directory containing your manifest file if it's not in the default location --no-extract-manifest disables manifest generation – the command will fail if no manifest exists Examples # Get full json schemas sanity schema list --json # Get a specific schema by ID sanity schema list --id <schema_id>
Validate a schema
usage: npx sanity schema validate Validates all schema types specified in a workspace. Options --workspace <name> The name of the workspace to use when validating all schema types. --format <pretty|ndjson|json> The output format used to print schema errors and warnings. --level <error|warning> The minimum level reported out. Defaults to warning. Examples # Validates all schema types in a Sanity project with more than one workspace sanity schema validate --workspace default # Save the results of the report into a file sanity schema validate > report.txt # Report out only errors sanity schema validate --level error
Was this page helpful?