--account <ACCOUNT> | Google Cloud Platform user account to use for invocation. Overrides the default *core/account* property value for this command invocation |
--all-environments | Make all environments accessible through this API product |
--all-proxies | Expose all available API proxies and their resources. Must be explicitly specified if neither `--apis` nor `--resources` is provided |
--apis <API> | Comma-separated names of API proxies to which this API product is bound. Only
those API proxies will be accessible through the new API product.
+
If not provided, all deployed API proxies will be included in the product, so
long as they match the other parameters.
+
The API proxy names must already be deployed to the bound environments, or
creation of the API product will fail. To get a list of deployed API proxies,
run:
+
$ {grandparent_command} deployments list
+
To deploy an API proxy, run:
+
$ {grandparent_command} apis deploy |
--attributes <NAME=VALUE> | Key-value attribute pairs that may be used to extend the default API product profile with customer-specific metadata. Up to 17 attributes can be specified |
--billing-project <BILLING_PROJECT> | The Google Cloud Platform project that will be charged quota for operations performed in gcloud. If you need to operate on one project, but need quota against a different project, you can use this flag to specify the billing project. If both `billing/quota_project` and `--billing-project` are specified, `--billing-project` takes precedence. Run `$ gcloud config set --help` to see more information about `billing/quota_project` |
--configuration <CONFIGURATION> | The configuration to use for this command invocation. For more
information on how to use configurations, run:
`gcloud topic configurations`. You can also use the CLOUDSDK_ACTIVE_CONFIG_NAME environment
variable to set the equivalent of this flag for a terminal
session |
--description <DESCRIPTION> | Overview of the API product. Include key information about the API product that is not captured by other fields |
--display-name <DISPLAY_NAME> | Name to be displayed in the UI or developer portal to developers registering for API access |
--environments <ENVIRONMENT> | Environments to which the API product is bound. Requests to environments that are not listed are rejected, preventing developers from accessing those resources through API Proxies deployed in another environment.
+
For example, this can prevent resources associated with API proxies in a ``prod'' environment from also granting access to matching API proxies deployed in a ``test'' environment.
+
To get a list of available environments, run:
+
$ {grandparent_command} environments list |
--flags-file <YAML_FILE> | A YAML or JSON file that specifies a *--flag*:*value* dictionary.
Useful for specifying complex flag values with special characters
that work with any command interpreter. Additionally, each
*--flags-file* arg is replaced by its constituent flags. See
$ gcloud topic flags-file for more information |
--flatten <KEY> | Flatten _name_[] output resource slices in _KEY_ into separate records
for each item in each slice. Multiple keys and slices may be specified.
This also flattens keys for *--format* and *--filter*. For example,
*--flatten=abc.def* flattens *abc.def[].ghi* references to
*abc.def.ghi*. A resource record containing *abc.def[]* with N elements
will expand to N records in the flattened output. This flag interacts
with other flags that are applied in this order: *--flatten*,
*--sort-by*, *--filter*, *--limit* |
--format <FORMAT> | Set the format for printing command output resources. The default is a
command-specific human-friendly output format. The supported formats
are: `config`, `csv`, `default`, `diff`, `disable`, `flattened`, `get`, `json`, `list`, `multi`, `none`, `object`, `table`, `text`, `value`, `yaml`. For more details run $ gcloud topic formats |
--help | Display detailed help |
--impersonate-service-account <SERVICE_ACCOUNT_EMAIL> | For this gcloud invocation, all API requests will be made as the given service account instead of the currently selected account. This is done without needing to create, download, and activate a key for the account. In order to perform operations as the service account, your currently selected account must have an IAM role that includes the iam.serviceAccounts.getAccessToken permission for the service account. The roles/iam.serviceAccountTokenCreator role has this permission or you may create a custom role. Overrides the default *auth/impersonate_service_account* property value for this command invocation |
--internal-access | Prevent external access to this API product |
--log-http | Log all HTTP server requests and responses to stderr. Overrides the default *core/log_http* property value for this command invocation |
--manual-approval | Require manual approval of developer requests to access this API product before their consumer keys can be used. If unset, the consumer key is generated in an "approved" state and can be used immediately |
--oauth-scopes <SCOPE> | Comma-separated list of OAuth scopes that are validated at runtime. Apigee validates that the scopes in any access token presented match the scopes defined in the OAuth policy associated with the API product |
--organization <ORGANIZATION> | Apigee organization containing the API product. If unspecified, the Cloud Platform project's associated organization will be used |
--private-access | Hide this API product in the developer portal but make it accessible by external developers |
--project <PROJECT_ID> | The Google Cloud Platform project ID to use for this invocation. If
omitted, then the current project is assumed; the current project can
be listed using `gcloud config list --format='text(core.project)'`
and can be set using `gcloud config set project PROJECTID`.
+
`--project` and its fallback `core/project` property play two roles
in the invocation. It specifies the project of the resource to
operate on. It also specifies the project for API enablement check,
quota, and billing. To specify a different project for quota and
billing, use `--billing-project` or `billing/quota_project` property |
--public-access | Make this API product visible to developers in the Apigee developer portal |
--quiet | Disable all interactive prompts when running gcloud commands. If input
is required, defaults will be used, or an error will be raised.
Overrides the default core/disable_prompts property value for this
command invocation. This is equivalent to setting the environment
variable `CLOUDSDK_CORE_DISABLE_PROMPTS` to 1 |
--quota <QUOTA> | Number of request messages permitted per app by this API product
for the specified `--quota-interval` and `--quota-unit`.
+
For example, to create an API product that allows 50 requests every twelve hours
to every deployed API proxy, run:
+
$ {command} PRODUCT --all-environments --all-proxies --public-access --quota=50 --quota-interval=12 --quota-unit=hour
+
If specified, `--quota-interval` and `--quota-unit` must be specified too |
--quota-interval <QUOTA_INTERVAL> | Time interval over which the number of request messages is calculated.
+
If specified, `--quota` and `--quota-unit` must be specified too |
--quota-unit <QUOTA_UNIT> | Time unit for `--quota-interval`.
+
If specified, `--quota` and `--quota-interval` must be specified too.
+
_QUOTA_UNIT_ must be one of: *minute*, *hour*, *day*, *month* |
--resources <RESOURCE> | API resources to be bundled in the API product, separated by `#` signs.
+
By default, the resource paths are mapped from the `proxy.pathsuffix` variable.
+
The proxy path suffix is defined as the URI fragment following the
ProxyEndpoint base path. For example, if ``/forecastrss'' is given as an element
of this list, and the base path defined for the API proxy is `/weather`, then
only requests to `/weather/forecastrss` are permitted by the API product.
+
Proxy paths can use asterisks as wildcards; `/**` indicates that all sub-URIs
are included, whereas a single asterisk indicates that only URIs one level
down are included.
+
By default, `/` supports the same resources as `/**` as well as the base path
defined by the API proxy.
+
For example, if the base path of the API proxy is `/v1/weatherapikey`, then
the API product supports requests to `/v1/weatherapikey` and to any sub-URIs,
such as `/v1/weatherapikey/forecastrss`, `/v1/weatherapikey/region/CA`, and so
on.
+
If not provided, all deployed API resources will be included in the product, so
long as they match the other parameters.
+
The API proxy resources must already be deployed to the bound environments, or
creation of the API product will fail |
--trace-token <TRACE_TOKEN> | Token used to route traces of service requests for investigation of issues. Overrides the default *core/trace_token* property value for this command invocation |
--user-output-enabled | Print user intended output to the console. Overrides the default *core/user_output_enabled* property value for this command invocation. Use *--no-user-output-enabled* to disable |
--verbosity <VERBOSITY> | Override the default verbosity for this command. Overrides the default *core/verbosity* property value for this command invocation. _VERBOSITY_ must be one of: *debug*, *info*, *warning*, *error*, *critical*, *none* |