syntax = "proto3"; package feeds; option go_package = "./proto;feeds"; service Feeds { rpc Add(AddRequest) returns (AddResponse) {} rpc Remove(RemoveRequest) returns (RemoveResponse) {} rpc Entries(EntriesRequest) returns (EntriesResponse) {} rpc List(ListRequest) returns (ListResponse) {} } message Feed { // rss feed name // eg. a16z string name = 1; // rss feed url // eg. http://a16z.com/feed/ string url = 2; // category of the feed string category = 3; } message Entry { string id = 1; string domain = 2; string url = 3; string title = 4; string content = 5; int64 date = 6; string category = 7; } message AddRequest { // rss feed name // eg. a16z string name = 1; // rss feed url // eg. http://a16z.com/feed/ string url = 2; // category to add string category = 3; } message AddResponse { } message EntriesRequest { // rss feed url // eg. http://a16z.com/feed/ string url = 1; } message EntriesResponse { repeated Entry entries = 1; } message ListRequest {} message ListResponse { repeated Feed feeds = 1; } message RemoveRequest { // rss feed name // eg. a16z string name = 1; } message RemoveResponse { }