syntax = "proto3"; package smartbotic.proto; option cc_enable_arenas = true; // Common timestamp message message Timestamp { int64 milliseconds = 1; } // Error details message Error { int32 code = 1; string message = 2; string details = 3; // JSON string for additional info } // Pagination request message PaginationRequest { int32 page = 1; int32 page_size = 2; string cursor = 3; // Alternative to offset pagination } // Pagination response message PaginationResponse { int32 total_count = 1; int32 page = 2; int32 page_size = 3; bool has_more = 4; string next_cursor = 5; } // Generic key-value pair message KeyValue { string key = 1; string value = 2; } // Request metadata message RequestMeta { string request_id = 1; string user_id = 2; map headers = 3; } // Empty message for void returns message Empty {}