Method: projects.locations.domains.schema.explore

Explores the topology schema starting from given node types or label names up to a specified hop depth.

HTTP request

POST https://apptopology.googleapis.com/v1/{name=projects/*/locations/*/domains/*/schema}:explore

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
name

string

Required. The name of the singleton domain schema resource. Format: projects/{project}/locations/{location}/domains/{domain}/schema

Request body

The request body contains data with the following structure:

JSON representation
{
  "startLabels": [
    string
  ],
  "depth": integer,
  "pageSize": integer,
  "pageToken": string
}
Fields
startLabels[]

string

Optional. Starting label names to begin traversal. Substring, case-insensitive matches are performed against allowed label names in the schema. A maximum of 10 startLabels can be specified; providing more will result in an INVALID_ARGUMENT error. If startLabels is unset or empty, all authorized node types will be used as the starting set.

depth

integer

Optional. The maximum depth of BFS traversal hops to perform from the starting node types or label names. Defaults to 0 if unspecified.

pageSize

integer

Optional. The maximum number of schema elements to return in a single page.

  • The service might return fewer elements than this value if adding another edge and its required endpoint nodes exceeds pageSize.
  • If omitted or set to 0, default (100) will be used.
  • Minimum pageSize is 3 to ensure at least one edge and its endpoint nodes fit on a page; values below 3 (e.g. 1 or 2) are changed to 3.
  • Maximum value is 500.
pageToken

string

Optional. A page token received from a previous schema.explore call. Provide this to retrieve the subsequent page.

When paginating, all other parameters (except pageSize) provided to schema.explore must match the call that provided the page token.

Response body

Response for schema.explore.

If successful, the response body contains data with the following structure:

JSON representation
{
  "nodeTypes": [
    {
      object (NodeType)
    }
  ],
  "edgeTypes": [
    {
      object (EdgeType)
    }
  ],
  "labelProperties": [
    {
      object (LabelProperties)
    }
  ],
  "edgeRules": [
    {
      object (EdgeRule)
    }
  ],
  "nextPageToken": string
}
Fields
nodeTypes[]

object (NodeType)

A list of NodeTypes defined within this schema. Refer to the documentation of NodeType for more details.

edgeTypes[]

object (EdgeType)

A list of EdgeTypes defined within this schema. Refer to the documentation of EdgeType for more details.

labelProperties[]

object (LabelProperties)

A list of supported labels and corresponding properties.

edgeRules[]

object (EdgeRule)

Edge rules. These will indicate which node types can be connected and through what edge type. This is a list of (sourceNodeType, edgeType, destinationNodeType) tuples.

nextPageToken

string

A token to retrieve the next page of results, or empty if there are no more results in the traversal set.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/apptopology.read-write
  • https://www.googleapis.com/auth/apptopology.read-only

For more information, see the Authentication Overview.

IAM Permissions

Requires the following IAM permission on the name resource:

  • apptopology.schemas.get

For more information, see the IAM documentation.