- NAME
-
- gcloud apihub external-apis create - create an External Api
- SYNOPSIS
-
-
gcloud apihub external-apis create(EXTERNAL_API:--location=LOCATION)--display-name=DISPLAY_NAME[--attributes=[ATTRIBUTES,…]] [--description=DESCRIPTION] [--documentation-external-uri=DOCUMENTATION_EXTERNAL_URI] [--endpoints=[ENDPOINTS,…]] [--paths=[PATHS,…]] [GCLOUD_WIDE_FLAG …]
-
- DESCRIPTION
- Create an external api
- EXAMPLES
-
To create an external API with the ID
my-external-api, run:gcloud apihub external-apis create --external-api=my-external-api --display-name="My External API" --project=my-project --location=us-central1 - POSITIONAL ARGUMENTS
-
-
ExternalApi resource - Identifier. Format:
projects/{project}/locations/{location}/externalApi/{externalApi}. The arguments in this group can be used to specify the attributes of this resource. (NOTE) Some attributes are not given arguments in this group but can be set in other ways.To set the
projectattribute:-
provide the argument
external_apion the command line with a fully specified name; -
provide the argument
--projecton the command line; -
set the property
core/project.
This must be specified.
EXTERNAL_API-
ID of the externalApi or fully qualified identifier for the externalApi.
To set the
external_apiattribute:-
provide the argument
external_apion the command line.
This positional argument must be specified if any of the other arguments in this group are specified.
-
provide the argument
--location=LOCATION-
The location id of the externalApi resource.
To set the
locationattribute:-
provide the argument
external_apion the command line with a fully specified name; -
provide the argument
--locationon the command line.
-
provide the argument
-
provide the argument
-
ExternalApi resource - Identifier. Format:
- REQUIRED FLAGS
-
--display-name=DISPLAY_NAME- Display name of the external API. Max length is 63 characters (Unicode Code Points).
- OPTIONAL FLAGS
-
--attributes=[ATTRIBUTES,…]-
The list of user defined attributes associated with the Version resource. The
key is the attribute name. It will be of the format:
projects/{project}/locations/{location}/attributes/{attribute}. The value is the attribute values associated with the resource.KEY-
Sets
KEYvalue. VALUE-
Sets
VALUEvalue.enumValues-
The attribute values associated with a resource in case attribute data type is
enum.
values-
The attribute values in case attribute data type is enum.
description- The detailed description of the allowed value.
displayName- The display name of the allowed value.
id-
The ID of the allowed value.
- If provided, the same will be used. The service will throw an error if the specified id is already used by another allowed value in the same attribute resource.
- If not provided, a system generated id derived from the display name will be used. In this case, the service will handle conflict resolution by adding a system generated suffix in case of duplicates.
This value should be 4-63 characters, and valid characters are /[a-z][0-9]-/.
immutable- When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes.
jsonValues-
The attribute values associated with a resource in case attribute data type is
JSON.
values- The attribute values in case attribute data type is string or JSON.
stringValues-
The attribute values associated with a resource in case attribute data type is
string.
values- The attribute values in case attribute data type is string or JSON.
uriValues-
The attribute values associated with a resource in case attribute data type is
URL, URI or IP, like gs://bucket-name/object-name.
values- The attribute values in case attribute data type is string or JSON.
Shorthand Example:--attributes=string={enumValues={values=[{description=string,displayName=string,id=string,immutable=boolean}]},jsonValues={values=[string]},stringValues={values=[string]},uriValues={values=[string]}}
JSON Example:--attributes='{"string": {"enumValues": {"values": [{"description": "string", "displayName": "string", "id": "string", "immutable": boolean}]}, "jsonValues": {"values": ["string"]}, "stringValues": {"values": ["string"]}, "uriValues": {"values": ["string"]}}}'
File Example:--attributes=path_to_file.(yaml|json)
--description=DESCRIPTION- Description of the external API. Max length is 2000 characters (Unicode Code Points).
- Documentation details.
--documentation-external-uri=DOCUMENTATION_EXTERNAL_URI- The uri of the externally hosted documentation.
--endpoints=[ENDPOINTS,…]- List of endpoints on which this API is accessible.
--paths=[PATHS,…]- List of paths served by this API.
- GCLOUD WIDE FLAGS
-
These flags are available to all commands:
--access-token-file,--account,--billing-project,--configuration,--flags-file,--flatten,--format,--help,--impersonate-service-account,--log-http,--project,--quiet,--trace-token,--user-output-enabled,--verbosity.Run
$ gcloud helpfor details. - API REFERENCE
-
This command uses the
apihub/v1API. The full documentation for this API can be found at: https://cloud.google.com/apigee/docs/api-hub/what-is-api-hub - NOTES
-
This variant is also available:
gcloud alpha apihub external-apis create
gcloud apihub external-apis create
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-02-24 UTC.