Skip to content
API definition for gRPC service go-plotly.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE
README.MD
service.proto

README.MD

Chart API

go-plotly is a simple, free to use plotting microservice.

Connect to go-plotly with a gRPC connection and plot graphs in real time.

go-plotly is built on top of plot.ly and offers similar functionalities to it's API, without their restrictions. go-plotly uses a combination of gRPC and websocket technology to create an easy to use, reliable microservice that delivers near instantaneous transmission of data between a client and a graph and overcomes the 50ms throttle imposed by plot.ly.

Plus, did I mention that it is COMPLETELY free?

Here's an example client written in Go.

Service: chart.endpoints.go-plotly.cloud.goog

The service name chart.endpoints.go-plotly.cloud.goog is needed to create RPC client stubs.

Methods

Methods Summary
Authenticate Performs session registration and creates link to which subsequent plotting operations will be directed: reveive result immediately.
PlotCandleSticks Performs charting of CandleStick data: receive result after operation ceases.
PlotScatters Performs charting of Scatter data: receive result after operation ceases.

Authenticate

rpc Authenticate(AuthenticateRequest) returns (AuthenticateResponse)

Performs session registration and creates link to which subsequent plotting operations will be directed: reveive result immediately. Returns either an RPC error or an AuthenticateResponse.
Authorization Scopes
Requires an API key.

PlotScatters

rpc PlotScatters(stream PlotScattersRequest) returns (PlotResponse)

Performs one directional streaming of PlotScattersRequest from client to service: receive result after operation ceases.
Authorization Scopes
Requires session token obtained from AuthenticateResponse.

PlotCandleSticks

rpc PlotCandleSticks(stream PlotCandleSticksRequest) returns (PlotResponse)

Performs one directional streaming of PlotCandleSticksRequest from client to service: receive result after operation ceases.
Authorization Scopes
Requires session token obtained from AuthenticateResponse.

AuthenticateRequest

The top-level message sent by the client for the Authenticate method.

Fields Summary
graphType GraphTypes Enum to indicate type of graph.
apiKey string API key to validate the request.

AuthenticateResponse

The only message returned to the client by the Authenticate method.

Fields Summary
graphLink string Link to which graph will be plotted.
sessionToken string Session token required to perform subsequent plot requests.

PlotScattersRequest

The top-level message sent by the client for the PlotScatters method. All messages must contain sessionToken acquired from AuthenticateResponse.

graphType that accompanies the sessionToken must match respective plotting requests to follow, in this case it is of GraphType.CANDLESTICK, otherwise the request returns google.rpc.Code.INVALID_ARGUMENT error code.

Fields Summary
sessionToken string Session token required to perform plot request.
points Points Data points to be plotted.

PlotCandleSticksRequest

Tht top-level message sent by the client for the PlotCandleSticks method. All messages must contain sessionToken acquired from AuthenticateResponse.

graphType that accompanies the sessionToken must match respective plotting requests to follow, in this case it is of GraphType.CANDLESTICK, otherwise the request returns google.rpc.Code.INVALID_ARGUMENT error code.

Fields Summary
sessionToken string Session token required to perform plot request.
candleSticks CandleSticks Data points to be plotted.

PlotResponse

The only message returned to the client from plotting requests. Message is returned after streaming request concludes.

Fields Summary
sessionToken string Session token for this streaming session.
graphLink string Link to which graph was plotted.
dataCount int32 Amount of plot requests that were received.
elapsedTime int32 Amount of elapsed time in seconds.

GraphTypes

The type of graph to be plotted.

Enums Summary
SCATTER Graph to be plotted will be of type scatter graph.
CANDLESTICK Graph to be plotted will be of type candle stick graph.

Points

Provides a repeated list of Point to be plotted.

Fields Summary
points repeated Point This list contains an array of Point.

CandleSticks

Provides a repeated list of CandleStick to be plotted.

Fields Summary
candleSticks repeated CandleStick This list contains an array of CandleStick.

Point

A data point to be plotted.

Fields Summary
ID string Identifies graph to which this Point will be plotted.
X double The x value of the data point.
Y double The y value of the data point.

CandleStick

A candle stick to be plotted.

Fields Summary
ID string Identifies graph to which this CandleStick will be plotted.
Open double The open value of the candle stick.
Close double The close value of the candle stick.
High double The high value of the candle stick.
Low double The low value of the candle stick.
TimeStamp google.protobuf.Timestamp The time stamp accompanying the candle stick.
You can’t perform that action at this time.