mirror of
https://github.com/kevin-DL/services.git
synced 2026-01-12 03:05:14 +00:00
* Autogenerate services.m3o.com * Openapi for all * Gen * Fix * Whaat * Fix dep * Fix * Hmm * Install make * Debug * Debug 1 * Location -> locations * Fix * Intall protoc gen micro * F * F * F * Push * Rename secret * Fix npm install * Fix script * Fix v2 * Ignore errors * Ignore v2 * F * F * F * Docs index * Add hugo theme * Hugo tania fixes * Change gen * Change gen 2 * Install hugo * Change gen * Gen fix * Change hugo install * Change hugo install * CNAME * Change articles wording * Tiny fix * Fix gen * Redoc it all * Fix gen * Fixing up protos * Fix proto * Fix gen * Fix * Trigger build * Fix copy * Openapi docs * Flatten * Changes * No date vol2 * Changes * Add make to chat * Fixes * Change * api spec * replace RSS * fix link * Dont continue on error * increase the width * use micro at master * change box colours * move some things * Pushing new readmes to see how they look like * Add skip file * Readmes * Nicer api link * Remove stutter * FIx mistake * set service font weight * Messages readme fix * add other font bold * Notes * Remove post from url * Revert "Remove post from url" This reverts commit 5fea2c23d0bafa910f5dc4d4cc63f71f578530e3. * move exampleSite to site * replace exampleSite with site * update readme * use filename for post * update index * Add source urls * set source as params * set source as params * Fix entries * Generator in go * Fixes to generator * F * Change doc gen * FIx cname * Fixing protos * Change to makefiles * Fix gen script Co-authored-by: Asim Aslam <asim@aslam.me>
63 lines
1.3 KiB
Protocol Buffer
63 lines
1.3 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package posts;
|
|
option go_package = "proto;posts";
|
|
|
|
service Posts {
|
|
// Query currently only supports read by slug or timestamp, no listing.
|
|
rpc Query(QueryRequest) returns (QueryResponse) {}
|
|
rpc Save(SaveRequest) returns (SaveResponse) {}
|
|
rpc Delete(DeleteRequest) returns (DeleteResponse) {}
|
|
}
|
|
|
|
message Post {
|
|
string id = 1;
|
|
string title = 2;
|
|
string slug = 3;
|
|
string content = 4;
|
|
int64 created = 5;
|
|
int64 updated = 6;
|
|
string author = 7;
|
|
repeated string tags = 8;
|
|
map<string,string> metadata = 9;
|
|
string image = 19;
|
|
}
|
|
|
|
// Query posts. Acts as a listing when no id or slug provided.
|
|
// Gets a single post by id or slug if any of them provided.
|
|
message QueryRequest {
|
|
string id = 1;
|
|
string slug = 2;
|
|
string tag = 3;
|
|
int64 offset = 4;
|
|
int64 limit = 5;
|
|
}
|
|
|
|
message QueryResponse {
|
|
repeated Post posts = 1;
|
|
}
|
|
|
|
message SaveRequest {
|
|
string id = 1;
|
|
string title = 2;
|
|
string slug = 3;
|
|
string content = 4;
|
|
int64 timestamp = 5;
|
|
// When updating a post and wanting to delete all tags,
|
|
// send a list of tags with only one member being an empty string [""]
|
|
repeated string tags = 6;
|
|
map<string,string> metadata = 7;
|
|
string image = 8;
|
|
}
|
|
|
|
message SaveResponse {
|
|
string id = 1;
|
|
}
|
|
|
|
message DeleteRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message DeleteResponse {}
|
|
|