Grid commands are in pre-release and support macOS and Linux. Their arguments, flags, and output can change.
setup
--harness, setup lets you select from the harnesses installed on your machine. Repeat --harness to configure several. Setup replaces each harness’s model picker with your team’s routes and their model metadata. Claude Code lists routes that serve the Anthropic Messages API, while Codex lists routes that serve the OpenAI Responses API. An explicit --primary-route-id takes precedence over the team’s default for that harness. Without either, setup uses the first compatible route. Run baseten grid route list to find route IDs. Harness configurations store the corresponding route names.
The primary route handles the harness’s main work. Claude Code and OpenCode can use a separate background route for lightweight tasks and a separate subagent route. Claude Code can also use a fallback route when its primary route is unavailable. Primary and background routes use team defaults when available. An omitted subagent route keeps the harness’s own setting, and an omitted Claude Code fallback uses the primary route.
Setup replaces the harness’s existing integration settings without saving their previous values. Running setup again refreshes those settings. The first setup creates a Grid API key, which later runs reuse. With --use-session-credential, setup installs the session’s API key instead. The CLI never creates, rotates, or deletes that session key.
Setup records the team and options so baseten grid sync can replay them. Restart the harness after setup.
For Codex, setup signs you out of OpenAI or ChatGPT and disables ChatGPT login while the harness uses the Baseten integration. If the Codex background server is running, setup restarts it. When the server has attached Codex sessions, setup asks for confirmation first.
For OpenCode, setup writes the original settings format that OpenCode 1 and 2 both support. If the file already uses OpenCode 2’s native settings, setup preserves that format.
Options
TEXT
Route ID for lightweight background tasks (Claude Code and OpenCode). Defaults to the team’s default for the harness, else deepseek-ai/DeepSeek-V4.1-Flash.
TEXT
Harness configuration directory. Requires exactly one
--harness. Defaults to the harness’s own location.BOOL
Preview the configuration without changing files or creating an API key.
TEXT
Route ID to fall back to when the default is unavailable (Claude Code). Defaults to the primary route.
TEXT (repeatable)
Harness to apply to. May be repeated.One of:
claude-code, codex, opencode, piTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
Name of the Grid API key, if setup creates one. Defaults to baseten-harness-
hostname-random suffix.TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Primary route ID. Defaults to the team’s default for the harness, else the first route the harness lists.
TEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Route ID for subagents (Claude Code and OpenCode). Defaults to the harness’s own setting.
TEXT
Team name or ID whose routes to use. Omit to let the API select your only team. Run ‘baseten org team list’ to see teams.
BOOL
Install the session’s API key (BASETEN_API_KEY or an API-key profile) as the harness credential instead of creating a Grid API key. The key is never created, rotated, or deleted by this CLI. Mutually exclusive with
--key-name.BOOL
Skip the interactive confirmation prompt. Required when stdin is not a terminal.
BOOL
Enable verbose logging
Examples
Configure installed harnesses interactively:Filter output with --jq
Print the configuration file paths:
Output
Text mode (--output text): The created key and follow-up commands. Use --dry-run or --verbose for the configuration of each harness, and --verbose for setting names.
JSON mode (--output json): Returns an items array with the setup plan for each selected harness.
sync
baseten grid setup command.
Sync doesn’t accept a harness selection. To change the selection, run baseten grid setup or baseten grid teardown. If the team removed a stored route, sync falls back to the default route and prints a warning. Sync updates only harnesses recorded under the current profile, and a machine without a record must run setup first.
For harnesses configured with --use-session-credential, sync resolves the session’s API key again. If the key is unavailable, sync returns an error instead of creating a replacement.
When nothing changes, sync exits with code 0 without modifying files, so you can run it on a schedule. Pass --yes to skip the prompt when sync finds changes.
For Codex, sync restarts the background server. If the server has attached sessions, sync asks first unless you pass --yes. Restarting interrupts an in-progress turn but preserves thread history. If you decline the restart or it fails, the next sync tries again.
Options
BOOL
Preview the refresh without changing files or creating an API key.
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Skip the interactive confirmation prompt. Required when stdin is not a terminal.
BOOL
Enable verbose logging
Examples
Refresh every configured harness, as a scheduled run does:Filter output with --jq
Print the configuration files a sync would change:
Output
Text mode (--output text): The refreshed configuration of each harness, like setup. Use --dry-run to preview, and --verbose for per-harness details.
JSON mode (--output json): Returns an items array with the sync result for each configured harness.
status
--harness, the command shows every harness configured at its default path. Status reads only local files, so it works after you uninstall the harness. It doesn’t check the API key or live routes. Rerun setup to refresh routes.
Options
TEXT
Harness configuration directory. Requires exactly one
--harness. Defaults to the harness’s own location.TEXT (repeatable)
Harness to apply to. May be repeated.One of:
claude-code, codex, opencode, piTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Enable verbose logging
Examples
Inspect Codex configuration:Filter output with --jq
Print each harness’s state:
Output
Text mode (--output text): Local configuration and configured routes. Use --verbose for setting names.
JSON mode (--output json): Returns an items array with each harness’s installation and configuration state.
harness-defaults
--harness to narrow the output; without it, the command shows every harness. Admins can change defaults on app.baseten.co or through the API. This command only reads them.
Options
TEXT (repeatable)
Harness to show. May be repeated. Defaults to every harness.One of:
claude-code, codex, opencode, piTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID whose defaults to show. Defaults to your only team; required if you belong to more than one. Run ‘baseten org team list’ to see teams.
BOOL
Enable verbose logging
Examples
Show every harness’s defaults for your only team:Filter output with --jq
Print the primary route for Claude Code:
Output
Text mode (--output text): Table with columns: HARNESS, PRIMARY, BACKGROUND. Each route is followed by its source in parentheses; ’-’ means no default is set. JSON includes the team and each default’s full route and source.
JSON mode (--output json): Returns the team and an items array of harness defaults, including each route and its source.
teardown
--harness, the command removes every integration configured at its default path.
Teardown deletes a removed harness’s Grid API key after no other harness on the machine uses it. It never deletes a key installed with --use-session-credential. Teardown also removes the setup record so baseten grid sync stops refreshing the harness. It works after you uninstall the harness.
For Codex, teardown re-enables ChatGPT login and restarts the background server if it’s running. When the server has attached Codex sessions, teardown asks for confirmation first. Run codex login to sign back in.
Options
TEXT
Harness configuration directory. Requires exactly one
--harness. Defaults to the harness’s own location.BOOL
Preview removal without changing files.
TEXT (repeatable)
Harness to apply to. May be repeated.One of:
claude-code, codex, opencode, piTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Skip the interactive confirmation prompt. Required when stdin is not a terminal.
BOOL
Enable verbose logging
Examples
Preview removal:Filter output with --jq
List the settings teardown would remove:
Output
Text mode (--output text): The settings removed from each harness. Use --verbose for configuration paths and setting names.
JSON mode (--output json): Returns an items array with the teardown result for each selected harness.
route
Manage routes. Baseten derives each route’s name from its target. You can’t change a route’s name, team, or target type after creation, but you can update its classifier configuration. A model route sends every request to one Baseten Model API or external-provider connection. A classifier-backed route lets a managed classifier choose among the routes inallowed_routes; if the classifier selects none, Grid uses default_route.
list
--team.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID to list routes of. Omit to list across all accessible teams. Run ‘baseten org team list’ to see teams.
BOOL
Enable verbose logging
Examples
List routes across your teams:Filter output with --jq
Print route names:
Output
Text mode (--output text): Table with columns: ID, TEAM ID, TEAM NAME, DISPLAY NAME, NAME, CREATED. Run baseten grid route describe to inspect a route’s target. When no routes match, prints “No routes found.” to stderr.
JSON mode (--output json): Returns all matching routes in an items array.
target.type is BASETEN_MODEL_API, CONNECTION, or CLASSIFIER. Model targets include model; connection targets also include connection_id. Classifier targets include classifier, allowed_routes, and default_route.
describe
--id or --name.
Options
TEXT
Stable route ID.Mutually exclusive with other flags in group
route-ref.TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
Exact route name, including its organization-owned prefix.Mutually exclusive with other flags in group
route-ref.TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Enable verbose logging
Examples
Describe a route by name:Filter output with --jq
Print the invoke URL:
Output
Text mode (--output text): Field-per-line summary of the route, including its target, invoke URL, and team name. Classifier and referenced route names include IDs in parentheses. For an unrecognized target type, text mode prints unrecognized type.
JSON mode (--output json): Returns the route and its target configuration.
target.type is BASETEN_MODEL_API, CONNECTION, or CLASSIFIER. Model targets include model; connection targets also include connection_id. Classifier targets include classifier, allowed_routes, and default_route.
create
--target-type and --target-model. To create a classifier route, pass --target-type classifier, --classifier-id, one or more --allowed-route-id values, and --default-route-id. Baseten derives the route’s name from its target. Run baseten model-api list to find Model API names.
If you belong to one team, --team is optional. If you belong to several, specify a team. External providers use a connection owned by the route’s team. The connection holds the provider’s API key; pass its ID with --target-connection-id. When you specify a team, the connection must belong to that team.
Set optional metadata with --display-name and --description.
Options
TEXT (repeatable)
ID of a route the classifier may select. Repeat for each allowed route.
TEXT
Classifier ID from grid classifier list. Requires allowed and default route IDs.
TEXT
ID of the allowed route used when the classifier picks none.
TEXT
Optional route description (up to 1000 characters).
TEXT
Display name (1 to 255 characters). Defaults to the route name.
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
ID of a connection in the route’s team, whose provider serves the route. Required with
--target-type connection.TEXT
Model API name or external provider model name. Required for non-classifier targets.
TEXT
required
Target type.One of:
baseten-model-api, connection, classifierTEXT
Team name or ID the route belongs to. Defaults to your only team; required when you belong to several. Run ‘baseten org team list’ to see teams.
BOOL
Enable verbose logging
Examples
Create a Model API route:Filter output with --jq
Print the created route ID:
Output
Text mode (--output text): On success, prints “Created route name (id)” to stderr; no stdout output.
JSON mode (--output json): Returns the created route.
target.type is BASETEN_MODEL_API, CONNECTION, or CLASSIFIER. Model targets include model; connection targets also include connection_id. Classifier targets include classifier, allowed_routes, and default_route.
update
--id or --name.
Pass --display-name or --description; the command leaves omitted fields unchanged. To replace a classifier configuration, supply --classifier-id, --allowed-route-id, and --default-route-id together. Pass --description '' to clear the description. You can’t change the route’s name, team, target type, or non-classifier target.
Options
TEXT (repeatable)
ID of a route the classifier may select. Repeat for each allowed route.
TEXT
Classifier ID from grid classifier list. Requires allowed and default route IDs.
TEXT
ID of the allowed route used when the classifier picks none.
TEXT
New description (up to 1000 characters). Pass an empty string to clear it.
TEXT
New display name (1 to 255 characters). Omit to keep it unchanged.
TEXT
Stable route ID.Mutually exclusive with other flags in group
route-ref.TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
Exact route name, including its organization-owned prefix.Mutually exclusive with other flags in group
route-ref.TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Enable verbose logging
Examples
Change a route’s description:Filter output with --jq
Change the display name and print it:
Output
Text mode (--output text): On success, prints “Updated route name (id)” to stderr; no stdout output.
JSON mode (--output json): Returns the updated route.
target.type is BASETEN_MODEL_API, CONNECTION, or CLASSIFIER. Model targets include model; connection targets also include connection_id. Classifier targets include classifier, allowed_routes, and default_route.
delete
--id or --name.
The command prompts for confirmation. Pass --yes to skip the prompt. When stdin isn’t a terminal, pass --yes.
Options
TEXT
Stable route ID.Mutually exclusive with other flags in group
route-ref.TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
Exact route name, including its organization-owned prefix.Mutually exclusive with other flags in group
route-ref.TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Skip the interactive confirmation prompt. Required when stdin is not a terminal.
BOOL
Enable verbose logging
Examples
Delete a route without prompting:Filter output with --jq
Print the deleted route’s ID:
Output
Text mode (--output text): On success, prints “Deleted route name (id)” to stderr; no stdout output.
JSON mode (--output json): Returns the deleted route’s ID and name.
usage
--group-by. Defaults match the API: the previous UTC day through today, grouped by model. Organization admins see organization usage, team admins see teams they manage, and other members see usage from their own keys. --team narrows the scope. Grouping by router includes only routed usage; don’t add these totals to totals from other groupings.
Usage covers whole UTC days. The CLI rounds --start down to the start of its day and --end up to the end of its day. It fetches every bucket in the window, paging as needed, until it collects --limit buckets. Usage can lag by up to 15 minutes, and Baseten retains it for 92 days. Model API costs use your prices and include tool calls. OpenAI, Anthropic, and xAI costs estimate what those providers charge and aren’t Baseten charges. The results exclude Vertex and OpenAI-compatible usage.
Run baseten grid user-settings describe to compare this month’s spend with your limit. For machine-readable streaming, prefer --output jsonl over --output json.
Options
TEXT
End of the range, exclusive, rounded up to the end of its UTC day. ISO 8601, local when no timezone is given. Defaults to now.
TEXT (repeatable)
default:"model"
Dimension to break usage down by. May be repeated.One of:
user, team, model, provider, routerTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)INTEGER
Maximum number of daily buckets, paging as needed. 0 for no limit.
TEXT (repeatable)
Only return usage for these models. May be repeated.
TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT (repeatable)
Only return usage for these providers. May be repeated.One of:
baseten-model-api, openai, anthropic, xai, vertex, openai-compatibleTEXT
Window from a relative time ago until now (e.g. ‘7d’). Mutually exclusive with
--start and --end.TEXT
Start of the range, inclusive, snapped down to its UTC day. ISO 8601, local when no timezone is given. Defaults to the day before
--end.TEXT
Team name or ID to filter usage by. Without it, returns your authorized usage across teams.
TEXT (repeatable)
Only return usage from Grid API keys created by these user IDs. May be repeated. ‘baseten whoami’ shows your own.
BOOL
Enable verbose logging
Examples
Show usage per model since yesterday:Filter output with --jq
Stream each day’s cost per model as a JSONL stream:
Output
Text mode (--output text): Table with a DATE column, one column per --group-by dimension, then INPUT, CACHED, and OUTPUT token counts and COST, followed by an ALL totals row. A day with no usage renders as a single “(no usage)” row. A cost of ”-” means some of that usage couldn’t be priced. The window goes to stderr. When no day in the window has any usage, prints “No usage in the selected window.” to stderr instead of a table.
JSON mode (--output json): Returns one record per UTC day, including days without usage. Each record contains its date and per-dimension usage in results. Values in cost_usd are exact decimal strings.
API keys
Usebaseten org api-key list --type grid to list Grid API keys. To revoke a key, use baseten org api-key delete.
baseten grid setup creates the API key used by configured harnesses.
classifier
list
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Enable verbose logging
Examples
List available classifiers:Filter output with --jq
Print classifier IDs:
Output
Text mode (--output text): Table with ID and NAME columns. Lists all pages; an empty catalog prints a message to stderr.
JSON mode (--output json): Returns an items array of classifiers.
connection
A connection lets routes use an external provider without storing that provider’s API key in each route. It points to an existing team secret. To rotate credentials for every route that uses a connection, update the connection to point to another secret; the routes don’t change.list
--team to select one. In scripts that expect results from one team, always pass --team.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to list across all accessible teams.
BOOL
Enable verbose logging
Examples
List connections across your teams:Filter output with --jq
Print connection IDs:
Output
Text mode (--output text): Table with ID, TEAM ID, TEAM NAME, PROVIDER, and SECRET NAME columns. Lists all pages; secret values are never returned.
JSON mode (--output json): Returns an items array of connections.
create
--team is optional. If you belong to several, specify a team.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
required
Upstream provider.One of:
anthropic, openai, xaiTEXT
required
Name of an existing secret in the connection’s team.
TEXT
Team name or ID. Omit to use your only team; required when you belong to several.
BOOL
Enable verbose logging
Examples
Connect Anthropic using a team secret:Filter output with --jq
Print the new connection ID:
Output
Text mode (--output text): Confirmation on stderr; JSON contains the created connection.
JSON mode (--output json): Returns the created connection.
update
Options
TEXT
required
Connection ID.
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
required
Upstream provider.One of:
anthropic, openai, xaiTEXT
required
Name of an existing secret in the connection’s team.
BOOL
Enable verbose logging
Examples
Change the secret used by a connection:Filter output with --jq
Print the updated secret metadata:
Output
Text mode (--output text): Confirmation on stderr; JSON contains the updated connection.
JSON mode (--output json): Returns the updated connection.
delete
--yes to skip confirmation.
Options
TEXT
required
Connection ID.
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
BOOL
Skip confirmation; required when stdin is not a terminal.
BOOL
Enable verbose logging
Examples
Delete a connection:Filter output with --jq
Print the deleted ID:
Output
Text mode (--output text): Confirmation on stderr; JSON contains the deleted connection ID.
JSON mode (--output json): Returns the deleted connection’s ID.
team-settings
Team settings hold a team’s Grid spend limits. Read them and change the limits that apply to the team.describe
--team is optional. If you belong to several, specify a team.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to use your only team; required when you belong to several.
BOOL
Enable verbose logging
Examples
Show your only team’s settings:Filter output with --jq
Print the harness defaults:
Output
Text mode (--output text): Team ID and name, monthly spend limits, and a table of harness default routes and their sources.
JSON mode (--output json): Returns the team’s Grid settings.
update
--harness with --primary-route-id or --background-route-id. Pass null to clear that route. --clear-harness-defaults clears the configured defaults for every harness.
Spend limits are exact dollar amounts. The per-member limit applies to members who don’t have an individual limit. The team-wide limit covers all members’ combined Grid spend; when the team reaches it, Baseten rejects every member’s Grid requests in that team. Pass null to remove one limit, or use --clear-spend-limit to remove both. Updating settings requires team admin. Changing the team-wide limit requires organization admin.
If you belong to one team, --team is optional. If you belong to several, specify a team.
Options
TEXT | null
Background route ID for Claude Code or OpenCode; null clears it. Requires
--harness.BOOL
Clear all configured harness defaults. Cannot be combined with
--harness or route flags.BOOL
Clear both team spend limits. Requires organization admin. Cannot be combined with
--per-member-monthly-limit-usd or --team-wide-monthly-limit-usd.TEXT
Harness whose default route IDs to update.One of:
claude-code, codex, opencode, piTEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT | null
Default monthly USD limit per member; null removes it.
TEXT | null
Primary route ID; null clears the configured default. Requires
--harness.TEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to use your only team; required when you belong to several.
TEXT | null
Team-wide monthly USD limit; null removes it. Requires organization admin.
BOOL
Enable verbose logging
Examples
Set the default monthly limit per member:Filter output with --jq
Clear and print the team-wide limit:
Output
Text mode (--output text): The updated team settings, in the same format as describe.
JSON mode (--output json): Returns the updated team settings.
user-settings
User settings hold individual members’ Grid spend limits. Read them and change the limits that apply to one member.list
--team to select one team. In scripts that expect results from one team, always pass --team. This command requires team admin or organization admin.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to list across all accessible teams.
BOOL
Enable verbose logging
Examples
List members’ settings in a team:Filter output with --jq
Print each member’s limits:
Output
Text mode (--output text): Table with USER, EMAIL, TEAM ID, TEAM NAME, MONTH SPEND, EFFECTIVE LIMIT, and BLOCKED BY columns. Lists all pages; empty results print a message to stderr.
JSON mode (--output json): Returns an items array of member settings.
describe
--user-id me). Reading another user’s settings requires team admin or organization admin. If you belong to one team, --team is optional. If you belong to several, specify a team.
The current-month override takes precedence over the member’s standing limit. Without either, the team’s per-member limit applies. The team-wide limit is independent: when the team reaches it, Baseten blocks every member even if they haven’t reached their individual effective limit. blocked_by reports member or team so you can tell which limit stopped requests.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to use your only team; required when you belong to several.
TEXT
default:"me"
User ID, or me for yourself.
BOOL
Enable verbose logging
Examples
Show your own settings:Filter output with --jq
Print your effective monthly limit:
Output
Text mode (--output text): User and team identifiers, monthly spend, standing and override limits, effective limit, and blocked status.
JSON mode (--output json): Returns the member’s Grid settings.
update
--user-id me). Updating any member’s limits, including your own, requires team admin or organization admin.
Only the limits you provide change. Pass null to clear a limit, and provide dollar amounts as exact decimal values. A current-month override supersedes the standing limit until the UTC month ends or you clear the override. If you belong to one team, --team is optional. If you belong to several, specify a team.
Options
TEXT
Filter JSON output with a jq expression; implies
--output json (or jsonl for streamed commands)TEXT | null
USD limit for the current UTC month; null removes the override.
TEXT
default:"text"
Output formatOne of:
text, json, jsonl, noneTEXT
Use a specific stored profile for this command, overriding BASETEN_PROFILE and the current profile
TEXT
Team name or ID. Omit to use your only team; required when you belong to several.
TEXT
default:"me"
User ID, or me for yourself.
TEXT | null
Standing monthly USD limit for this user in the team; null removes it.
BOOL
Enable verbose logging
Examples
Set a member’s standing monthly limit:Filter output with --jq
Clear and print your current-month override:
Output
Text mode (--output text): The updated user settings, in the same format as describe.
JSON mode (--output json): Returns the updated member settings.
Commands moved from earlier releases
The formerbaseten harness and baseten route commands now run under baseten grid:
Route-selection flags now take route IDs and end in
-id, such as --primary-route-id, --background-route-id, and --target-connection-id. The API-key delete command removes one key at a time by name or prefix; the former --all option has no replacement. Route JSON also represents external providers with a CONNECTION target and connection_id instead of provider-specific target types. Update scripts that parse these fields.