syntax = "proto3"; package go.api; message Pair { string key = 1; repeated string values = 2; } // A HTTP request as RPC // Forward by the api handler message Request { string method = 1; string path = 2; map header = 3; map get = 4; map post = 5; string body = 6; // raw request body; if not application/x-www-form-urlencoded string url = 7; } // A HTTP response as RPC // Expected response for the api handler message Response { int32 statusCode = 1; map header = 2; string body = 3; } // A HTTP event as RPC // Forwarded by the event handler message Event { // e.g login string name = 1; // uuid string id = 2; // unix timestamp of event int64 timestamp = 3; // event headers map header = 4; // the event data string data = 5; }