core-extra/docs/grpc.md

35 lines
1.2 KiB
Markdown
Raw Normal View History

# Using the gRPC API
[gRPC](https://grpc.io/) is the main API for interfacing with CORE and used by
the python GUI for driving all functionality.
Currently we are providing a python client that wraps the generated files for
leveraging the API, but proto files noted below can also be leveraged to generate
bindings for other languages as well.
2019-10-19 05:51:15 +01:00
## HTTP Proxy
Since gRPC is HTTP2 based, proxy configurations can cause issue. You can either
properly account for this issue or clear out your proxy when running if needed.
## Python Client
A python client wrapper is provided at
[CoreGrpcClient](../daemon/core/api/grpc/client.py) to help provide some
conveniences when using the API.
## Proto Files
Proto files are used to define the API and protobuf messages that are used for
interfaces with this API.
They can be found [here](../daemon/proto/core/api/grpc) to see the specifics of
what is going on and response message values that would be returned.
## Examples
Example usage of this API can be found [here](../daemon/examples/grpc). These
examples will create a session using the gRPC API when the core-daemon is running.
You can then switch to and attach to these sessions using either of the CORE GUIs.