Reference For: developers

gRPC API reference

The gRPC services of the native API: connection, authentication metadata, every service, method, message and enum.

Connection

The controller serves gRPC over TLS on the address of [grpc] listen in controller.toml (port 8444 in the examples of this documentation). The package of every service is kyvernon.v1; the proto files are below for code generation.

Authentication metadata

Every call carries the same bearer token as the REST API, in the request metadata.

MetadataDescription
authorizationBearer followed by the token of a session or an API token.
x-request-idOptional correlation id of the request, at most 128 characters; errors and the audit record carry it.

Errors

A failed call returns the gRPC status of its error code and an ErrorDetail message in the status details, with the code, the message id, the arguments and the correlation id. The codes and message ids are listed in the error reference: Error codes

Services

ServiceFileDescription
InventoryServicekyvernon/v1/inventory.proto

Reads, writes and watches the objects of the inventory.

VmServicekyvernon/v1/vm.proto

Life cycle of virtual machines. Every call starts a task and returns its reference.

TaskServicekyvernon/v1/tasks.proto

Tasks: long-running operations with state, progress and result.

EventServicekyvernon/v1/tasks.proto

The event log of the inventory.

AlarmServicekyvernon/v1/tasks.proto

Alarm states of inventory objects.

IdentityServicekyvernon/v1/identity.proto

Sign-in, sessions, roles and permissions.

WebhookServicekyvernon/v1/webhooks.proto

Webhook subscriptions and their deliveries.

MetricsServicekyvernon/v1/metrics.proto

Performance counters, samples and the usage ledger.

TenantServicekyvernon/v1/tenants.proto

Tenants of a self-service portal and their servers. Bodies are JSON in the shape of the REST API.

IpPoolServicekyvernon/v1/ippool.proto

Public IP pools, their allocations and traffic.

FirewallServicekyvernon/v1/firewall.proto

The distributed firewall: groups, services, policies and rules, profiles, settings, realization, logs and the firewall of virtual machines. Bodies are JSON in the schemas of the REST API.

Downloads

Version 0.1.