Apidoc
Proto: apidoc.proto
Package: portal.gloo.solo.io
Types:
APIDocSpec
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 |
portal.gloo.solo.io.APIDocSpec.OpenApiDoc | Set this field if the APIDoc is of type OpenAPI (default). | |
grpc |
portal.gloo.solo.io.APIDocSpec.GrpcDoc | Set this field if the APIDoc is of type gRPC (default). | |
watchService |
common.portal.gloo.solo.io.ObjectRef | A reference to the Service that this Doc should watch for updates. In a multi-cluster environment, only Services in Gloo Portal's cluster will be watched. |
APIDocSpec.GrpcDoc
Parameters specific to a gRPC APIDoc.
Field | Type | Label | Description |
---|---|---|---|
dataSource |
common.portal.gloo.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 |
portal.gloo.solo.io.APIDocSpec.GrpcDoc.ReflectionDescriptorsSource | Use gRPC reflection to retrieve the gRPC descriptors |
APIDocSpec.GrpcDoc.ReflectionDescriptorsSource
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 (IP/HOST:PORT) 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 |
APIDocSpec.OpenApiDoc
Parameters specific to OpenApi APIDoc.
Field | Type | Label | Description |
---|---|---|---|
content |
common.portal.gloo.solo.io.DataSource | DataSource for retrieving the OpenAPI schema content |
APIDocStatus
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.portal.gloo.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 |
portal.gloo.solo.io.OpenAPIOperations | Information specific to an OpenAPI method | |
grpc |
portal.gloo.solo.io.GrpcMethods | Information specific to a gRPC method |
GrpcMethods
Field | Type | Label | Description |
---|---|---|---|
methods |
[]portal.gloo.solo.io.GrpcMethods.GrpcMethod | repeated | the list of methods defined in the gRPC Schema |
GrpcMethods.GrpcMethod
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 |
portal.gloo.solo.io.GrpcMethods.GrpcMethod.RPCType | the type of the RPC method. | |
route |
portal.gloo.solo.io.RouteSpecifier | the Routing configuration, if any, defined for this operation within the gRPC descriptors. Defined using the router.portal.gloo.solo.io. gRPC options. |
OpenAPIOperations
Field | Type | Label | Description |
---|---|---|---|
operations |
[]portal.gloo.solo.io.OpenAPIOperations.Operation | repeated | the list of operations defined in the OpenAPI schema |
OpenAPIOperations.Operation
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 |
portal.gloo.solo.io.RouteSpecifier | the Routing configuration, if any, defined for this operation within the OpenAPI doc. Defined using the x-solo-product-router OpenAPI extension. |
GrpcMethods.GrpcMethod.RPCType
Name | Number | Description |
---|---|---|
UNKNOWN |
0 | |
UNARY |
1 | |
CLIENT_STREAMING |
2 | |
SERVER_STREAMING |
3 | |
BIDIRECTIONAL_STREAMING |
4 |