message CUserGameNote { optional string id = 1; optional uint32 appid = 2; optional string shortcut_name = 3; optional uint32 shortcutid = 4; optional uint32 ordinal = 5; optional uint32 time_created = 6; optional uint32 time_modified = 7; optional string title = 8; optional string content = 9; } message CUserGameNotes_DeleteNote_Request { optional uint32 appid = 1; optional string shortcut_name = 2; optional uint32 shortcutid = 3; optional string note_id = 4; } message CUserGameNotes_DeleteNote_Response { } message CUserGameNotes_GetGamesWithNotes_Request { } message CUserGameNotes_GetGamesWithNotes_Response { repeated .CUserGameNotes_GetGamesWithNotes_Response_GameWithNotes games_with_notes = 1; } message CUserGameNotes_GetGamesWithNotes_Response_GameWithNotes { optional uint32 appid = 1; optional uint32 shortcutid = 2; optional string shortcut_name = 3; optional uint32 last_modified = 4; optional uint32 note_count = 5; } message CUserGameNotes_GetNotesForGame_Request { optional uint32 appid = 1; optional string shortcut_name = 2; optional uint32 shortcutid = 3; optional bool include_content = 4; } message CUserGameNotes_GetNotesForGame_Response { repeated .CUserGameNote notes = 1; } message CUserGameNotes_SaveNote_Request { optional uint32 appid = 1; optional string shortcut_name = 2; optional uint32 shortcutid = 3; optional string note_id = 4; optional bool create_new = 5; optional string title = 6; optional string content = 7; } message CUserGameNotes_SaveNote_Response { optional string note_id = 1; } service UserGameNotes { rpc DeleteNote (.CUserGameNotes_DeleteNote_Request) returns (.CUserGameNotes_DeleteNote_Response); rpc GetGamesWithNotes (.CUserGameNotes_GetGamesWithNotes_Request) returns (.CUserGameNotes_GetGamesWithNotes_Response); rpc GetNotesForGame (.CUserGameNotes_GetNotesForGame_Request) returns (.CUserGameNotes_GetNotesForGame_Response); rpc SaveNote (.CUserGameNotes_SaveNote_Request) returns (.CUserGameNotes_SaveNote_Response); }