Tool: get_api
Get API resource details.
The following sample demonstrate how to use curl
to invoke the get_api
MCP tool.
| Curl Request |
|---|
curl --location 'https://apihub. REGION .rep.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_api", "arguments": { // provide these details according to the tool' s MCP specification } } , "jsonrpc" : "2.0" , "id" : 1 } ' |
Where, REGION
is the supported API hub region. For more information, see Supported regions
.
Input Schema
The GetApi
method's request.
GetApiRequest
| JSON representation |
|---|
{ "name" : string } |
| Fields | |
|---|---|
name
|
Required. The name of the API resource to retrieve. Format: |
Output Schema
An API resource in the API Hub.
Api
| JSON representation |
|---|
{ "name" : string , "displayName" : string , "description" : string , "documentation" : { object ( |
| Fields | |
|---|---|
name
|
Identifier. The name of the API resource in the API Hub. Format: |
displayName
|
Required. The display name of the API resource. |
description
|
Optional. The description of the API resource. |
documentation
|
Optional. The documentation for the API resource. |
owner
|
Optional. Owner details for the API resource. |
versions[]
|
Output only. The list of versions present in an API resource. Note: An API resource can be associated with more than 1 version. Format is |
createTime
|
Output only. The time at which the API resource was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime
|
Output only. The time at which the API resource was last updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
targetUser
|
Optional. The target users for the API. This maps to the following system defined attribute: |
team
|
Optional. The team owning the API. This maps to the following system defined attribute: |
businessUnit
|
Optional. The business unit owning the API. This maps to the following system defined attribute: |
maturityLevel
|
Optional. The maturity level of the API. This maps to the following system defined attribute: |
attributes
|
Optional. The list of user defined attributes associated with the API resource. The key is the attribute name. It will be of the format: An object containing a list of |
apiStyle
|
Optional. The style of the API. This maps to the following system defined attribute: |
selectedVersion
|
Optional. The selected version for an API resource. This can be used when special handling is needed on client side for particular version of the API. Format is |
apiRequirements
|
Optional. The api requirement doc associated with the API resource. Carinality is 1 for this attribute. This maps to the following system defined attribute: |
fingerprint
|
Optional. Fingerprint of the API resource. This must be unique for each API resource. It can neither be unset nor be updated to an existing fingerprint of another API resource. |
sourceMetadata[]
|
Output only. The list of sources and metadata from the sources of the API resource. |
apiFunctionalRequirements
|
Optional. The api functional requirements associated with the API resource. Carinality is 1 for this attribute. This maps to the following system defined attribute: |
apiTechnicalRequirements
|
Optional. The api technical requirements associated with the API resource. Carinality is 1 for this attribute. This maps to the following system defined attribute: |
Documentation
| JSON representation |
|---|
{ "externalUri" : string } |
| Fields | |
|---|---|
externalUri
|
Optional. The uri of the externally hosted documentation. |
Owner
| JSON representation |
|---|
{ "displayName" : string , "email" : string } |
| Fields | |
|---|---|
displayName
|
Optional. The name of the owner. |
email
|
Required. The email of the owner. |
Timestamp
| JSON representation |
|---|
{ "seconds" : string , "nanos" : integer } |
| Fields | |
|---|---|
seconds
|
Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z). |
nanos
|
Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive. |
AttributeValues
| JSON representation |
|---|
{ "attribute" : string , // Union field |
attribute
string
Output only. The name of the attribute. Format: projects/{project}/locations/{location}/attributes/{attribute}
Value
. The attribute values associated with the resource. Value
can be only one of the following:enumValues
object (
EnumAttributeValues
)
The attribute values associated with a resource in case attribute data type is enum.
stringValues
object (
StringAttributeValues
)
The attribute values associated with a resource in case attribute data type is string.
jsonValues
object (
StringAttributeValues
)
The attribute values associated with a resource in case attribute data type is JSON.
uriValues
object (
StringAttributeValues
)
The attribute values associated with a resource in case attribute data type is URL, URI or IP, like gs://bucket-name/object-name.
EnumAttributeValues
| JSON representation |
|---|
{
"values"
:
[
{
object (
|
| Fields | |
|---|---|
values[]
|
Required. The attribute values in case attribute data type is enum. |
AllowedValue
| JSON representation |
|---|
{ "id" : string , "displayName" : string , "description" : string , "immutable" : boolean } |
| Fields | |
|---|---|
id
|
Required. 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]-/. |
displayName
|
Required. The display name of the allowed value. |
description
|
Optional. The detailed description of the allowed value. |
immutable
|
Optional. When set to true, the allowed value cannot be updated or deleted by the user. It can only be true for System defined attributes. |
StringAttributeValues
| JSON representation |
|---|
{ "values" : [ string ] } |
| Fields | |
|---|---|
values[]
|
Required. The attribute values in case attribute data type is string or JSON. |
AttributesEntry
| JSON representation |
|---|
{
"key"
:
string
,
"value"
:
{
object (
|
| Fields | |
|---|---|
key
|
|
value
|
|
SourceMetadata
| JSON representation |
|---|
{ "sourceType" : enum ( |
sourceType
enum (
SourceType
)
Output only. The type of the source.
originalResourceId
string
Output only. The unique identifier of the resource at the source.
originalResourceCreateTime
string (
Timestamp
format)
Output only. The time at which the resource was created at the source.
Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
or "2014-10-02T15:01:23+05:30"
.
originalResourceUpdateTime
string (
Timestamp
format)
Output only. The time at which the resource was last updated at the source.
Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
or "2014-10-02T15:01:23+05:30"
.
source
. The source of the resource. source
can be only one of the following:pluginInstanceActionSource
object (
PluginInstanceActionSource
)
Output only. The source of the resource is a plugin instance action.
PluginInstanceActionSource
| JSON representation |
|---|
{ "pluginInstance" : string , "actionId" : string } |
| Fields | |
|---|---|
pluginInstance
|
Output only. The resource name of the source plugin instance. Format is |
actionId
|
Output only. The id of the plugin instance action. |
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌

