Package : devportal.solo.io



Table of Contents


An APIDoc tells the Gloo Portal controller how to load an API specification (e.g. an OpenAPI document). APIDocs define the operations which are be bundled in APIProducts. The API specifications contained within an APIDoc can be used to provide configuration for HTTP routing of calls to the APIs defined in the spec.

Field Type Label Description
openApi APIDocSpec.OpenApiDoc Set this field if the APIDoc is of type OpenApi (default).
grpc APIDocSpec.GrpcDoc Set this field if the APIDoc is of type gRPC (default).


Parameters specific to a gRPC APIDoc.

Field Type Label Description
dataSource common.devportal.solo.io.DataSource Use a generic DataSource to retrieve the serialized gRPC Descriptors. To generate the descriptors manually, add --descriptors_out=<file> to the protoc command used to generate your proto files.
reflectionSource APIDocSpec.GrpcDoc.ReflectionDescriptorsSource Use gRPC reflection to retrieve the gRPC descriptors


Retrieve the descriptors from a gRPC server using gRPC Reflection. See https://github.com/grpc/grpc/blob/master/doc/server-reflection.md for more details.

Field Type Label Description
serviceAddress string the address of the grpc service
connectionTimeout google.protobuf.Duration the duration of time to wait for a grpc connection to be established before erroring out
insecure bool connect over HTTP rather than HTTPS


Parameters specific to OpenApi APIDoc.

Field Type Label Description
content common.devportal.solo.io.DataSource DataSource for retrieving the OpenAPI schema content


The current status of the APIDoc. The APIDoc will be processed as soon as one or more Portals select it for publishing.

Field Type Label Description
observedGeneration int64 The observed generation of the APIDoc. When this matches the APIDoc’s metadata.generation, it indicates the status is up-to-date.
state common.devportal.solo.io.State The current state of the APIDoc.
reason string A human-readable string explaining the error, if any.
displayName string User-facing display name for the APIDoc.
version string User-facing version number
description string User-facing description
openApi OpenAPIOperations Information specific to a grpc method
grpc GrpcMethods Information specific to a grpc method


Field Type Label Description
methods []GrpcMethods.GrpcMethod repeated the list of methods defined in the gRPC Schema


describes an operation (RPC method) defined in a set of gRPC Descriptors

Field Type Label Description
serviceName string the name of the gRPC service serving the RPC method.
rpcName string the name of the RPC method as defined on the service.
summary string the summary, if any, for the method
rpcType GrpcMethods.GrpcMethod.RPCType the type of the RPC method.
route RouteSpecifier the Routing configuration, if any, defined for this operation within the gRPC descriptors. Defined using the router.devportal.solo.io. gRPC options.


Field Type Label Description
operations []OpenAPIOperations.Operation repeated the list of operations defined in the OpenAPI schema


describes an operation as defined in an OpenAPI Schema

Field Type Label Description
operationId string the OperationID of the operation (this field is required by Gloo Portal)
path string the HTTP Path for the operation
verb string the HTTP Verb for the operation
summary string the summary, if any, for the operation
route RouteSpecifier the Routing configuration, if any, defined for this operation within the OpenAPI doc. Defined using the x-solo-product-router OpenAPI extension.
usagePlans []string repeated The names of the usage plans that are authorized to access this route. If the route is imported into a Product where the UsagePlan does not exist, the route will be considered invalid. If this route is shared between multiple APIProducts, the usage plans listed here must be defined on each one. Defined using the x-solo-product-usage-plans OpenAPI extension.


Name Number Description