diff --git a/app/assets/proto/BillInquiryMci.proto b/app/assets/proto/BillInquiryMci.proto
new file mode 100644
index 0000000..018553a
--- /dev/null
+++ b/app/assets/proto/BillInquiryMci.proto
@@ -0,0 +1,29 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoBillInquiryMci";
+
+message BillInquiryMci {
+ Request request = 1;
+ uint64 mobile_number = 2;
+}
+
+message BillInquiryMciResponse {
+ Response response = 1;
+ uint32 status = 2;
+ string message = 3;
+
+ message BillInfo {
+ uint32 status = 1;
+ uint64 bill_id = 2;
+ uint64 pay_id = 3;
+ uint64 amount = 4;
+ string message = 5;
+ }
+
+ BillInfo mid_term = 4;
+ BillInfo last_term = 5;
+}
\ No newline at end of file
diff --git a/app/assets/proto/BillInquiryTelecom.proto b/app/assets/proto/BillInquiryTelecom.proto
new file mode 100644
index 0000000..18c34c0
--- /dev/null
+++ b/app/assets/proto/BillInquiryTelecom.proto
@@ -0,0 +1,28 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoBillInquiryTelecom";
+
+message BillInquiryTelecom {
+ Request request = 1;
+ uint32 province_code = 2;
+ uint64 telephone_number = 3;
+}
+
+message BillInquiryTelecomResponse {
+ Response response = 1;
+ uint32 status = 2;
+ string message = 3;
+
+ message BillInfo {
+ uint64 bill_id = 1;
+ uint64 pay_id = 2;
+ uint64 amount = 3;
+ }
+
+ BillInfo mid_term = 4;
+ BillInfo last_term = 5;
+}
\ No newline at end of file
diff --git a/app/assets/proto/ChannelPinMessage.proto b/app/assets/proto/ChannelPinMessage.proto
new file mode 100644
index 0000000..ae85d45
--- /dev/null
+++ b/app/assets/proto/ChannelPinMessage.proto
@@ -0,0 +1,20 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+import "Global.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoChannelPinMessage";
+
+message ChannelPinMessage {
+ Request request = 1;
+ uint64 room_id = 2;
+ uint64 message_id = 3;
+}
+
+message ChannelPinMessageResponse {
+ Response response = 1;
+ uint64 room_id = 2;
+ RoomMessage pinned_message = 3;
+}
\ No newline at end of file
diff --git a/app/assets/proto/ChannelSendMessage.proto b/app/assets/proto/ChannelSendMessage.proto
index 5d4acf9..5a05083 100644
--- a/app/assets/proto/ChannelSendMessage.proto
+++ b/app/assets/proto/ChannelSendMessage.proto
@@ -17,6 +17,7 @@ message ChannelSendMessage {
RoomMessageContact contact = 7;
uint64 reply_to = 8;
RoomMessageForwardFrom forward_from = 9;
+ uint64 random_id = 10;
}
message ChannelSendMessageResponse {
diff --git a/app/assets/proto/ChannelUpdateReactionStatus.proto b/app/assets/proto/ChannelUpdateReactionStatus.proto
new file mode 100644
index 0000000..b14ddc1
--- /dev/null
+++ b/app/assets/proto/ChannelUpdateReactionStatus.proto
@@ -0,0 +1,19 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoChannelUpdateReactionStatus";
+
+message ChannelUpdateReactionStatus {
+ Request request = 1;
+ uint64 room_id = 2;
+ bool reaction_status = 3;
+}
+
+message ChannelUpdateReactionStatusResponse {
+ Response response = 1;
+ uint64 room_id = 2;
+ bool reaction_status = 3;
+}
\ No newline at end of file
diff --git a/app/assets/proto/ChatSendMessage.proto b/app/assets/proto/ChatSendMessage.proto
index c2ad95e..99a5449 100644
--- a/app/assets/proto/ChatSendMessage.proto
+++ b/app/assets/proto/ChatSendMessage.proto
@@ -17,6 +17,7 @@ message ChatSendMessage {
RoomMessageContact contact = 7;
uint64 reply_to = 8;
RoomMessageForwardFrom forward_from = 9;
+ uint64 random_id = 10;
}
message ChatSendMessageResponse {
diff --git a/app/assets/proto/ClientRegisterDevice.proto b/app/assets/proto/ClientRegisterDevice.proto
new file mode 100644
index 0000000..4393531
--- /dev/null
+++ b/app/assets/proto/ClientRegisterDevice.proto
@@ -0,0 +1,24 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoClientRegisterDevice";
+
+message ClientRegisterDevice {
+ Request request = 1;
+ string token = 2;
+
+ enum Type {
+ GENERIC = 0;
+ ANDROID = 1;
+ IOS = 2;
+ WEB = 3;
+ }
+ Type type = 3;
+}
+
+message ClientRegisterDeviceResponse {
+ Response response = 1;
+}
\ No newline at end of file
diff --git a/app/assets/proto/Global.proto b/app/assets/proto/Global.proto
index 1a8fc3c..124a181 100644
--- a/app/assets/proto/Global.proto
+++ b/app/assets/proto/Global.proto
@@ -48,6 +48,7 @@ enum RoomMessageType {
LOCATION = 11;
LOG = 12;
CONTACT = 13;
+ WALLET = 15;
}
enum RoomMessageStatus {
@@ -85,6 +86,7 @@ message RoomMessageLog {
MISSED_VIDEO_CALL = 11;
MISSED_SCREEN_SHARE = 12;
MISSED_SECRET_CHAT = 13;
+ PINNED_MESSAGE = 14;
}
Type type = 1;
@@ -108,6 +110,24 @@ message RoomMessageContact {
repeated string email = 5;
}
+message RoomMessageWallet {
+ enum Type {
+ MONEY_TRANSFER = 0;
+ }
+ Type type = 1;
+
+ message MoneyTransfer {
+ uint64 from_user_id = 1;
+ uint64 to_user_id = 2;
+ uint64 amount = 3;
+ int64 trace_number = 4;
+ int64 invoice_number = 5;
+ uint32 pay_time = 6;
+ string description = 7;
+ }
+ MoneyTransfer money_transfer = 2;
+}
+
message RoomMessageForwardFrom {
uint64 room_id = 1;
uint64 message_id = 2;
@@ -140,6 +160,7 @@ message RegisteredUser {
bool deleted = 14;
string cache_id = 15;
string bio = 16;
+ bool verified = 17;
}
enum ClientAction {
@@ -193,6 +214,7 @@ message RoomMessage {
RoomMessageLocation location = 9;
RoomMessageLog log = 10;
RoomMessageContact contact = 11;
+ RoomMessageWallet wallet = 22;
bool edited = 12;
uint32 create_time = 13;
uint32 update_time = 14;
@@ -202,6 +224,7 @@ message RoomMessage {
RoomMessage reply_to = 17;
uint64 previous_message_id = 18;
+ uint64 random_id = 21;
enum ExtraType {
NO_EXTRA = 0;
@@ -248,6 +271,7 @@ message Room {
RoomMessage first_unread_message = 14;
RoomMute room_mute = 15;
uint64 pin_id = 16;
+ RoomMessage pinned_message = 17;
ChatRoom chat_room_extra = 11;
GroupRoom group_room_extra = 12;
@@ -327,6 +351,8 @@ message ChannelRoom {
bool signature = 10;
uint64 seen_id = 11;
+ bool verified = 12;
+ bool reaction_status = 13;
}
message Thumbnail {
@@ -350,6 +376,7 @@ message File {
double duration = 9;
string cache_id = 10;
string mime = 11;
+ string public_url = 12;
}
diff --git a/app/assets/proto/GroupPinMessage.proto b/app/assets/proto/GroupPinMessage.proto
new file mode 100644
index 0000000..e3b76bf
--- /dev/null
+++ b/app/assets/proto/GroupPinMessage.proto
@@ -0,0 +1,20 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+import "Global.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoGroupPinMessage";
+
+message GroupPinMessage {
+ Request request = 1;
+ uint64 room_id = 2;
+ uint64 message_id = 3;
+}
+
+message GroupPinMessageResponse {
+ Response response = 1;
+ uint64 room_id = 2;
+ RoomMessage pinned_message = 3;
+}
\ No newline at end of file
diff --git a/app/assets/proto/GroupSendMessage.proto b/app/assets/proto/GroupSendMessage.proto
index b69149d..68087bd 100644
--- a/app/assets/proto/GroupSendMessage.proto
+++ b/app/assets/proto/GroupSendMessage.proto
@@ -17,6 +17,7 @@ message GroupSendMessage {
RoomMessageContact contact = 7;
uint64 reply_to = 8;
RoomMessageForwardFrom forward_from = 9;
+ uint64 random_id = 10;
}
message GroupSendMessageResponse {
diff --git a/app/assets/proto/MplGetBillToken.proto b/app/assets/proto/MplGetBillToken.proto
new file mode 100644
index 0000000..7a3dbf9
--- /dev/null
+++ b/app/assets/proto/MplGetBillToken.proto
@@ -0,0 +1,21 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoMplGetBillToken";
+
+message MplGetBillToken {
+ Request request = 1;
+ uint64 bill_id = 2;
+ uint64 pay_id = 3;
+}
+
+message MplGetBillTokenResponse {
+ Response response = 1;
+ uint32 status = 2;
+ string token = 3;
+ uint32 expire_time = 4;
+ string message = 5;
+}
\ No newline at end of file
diff --git a/app/assets/proto/MplGetTopupToken.proto b/app/assets/proto/MplGetTopupToken.proto
new file mode 100644
index 0000000..07229e7
--- /dev/null
+++ b/app/assets/proto/MplGetTopupToken.proto
@@ -0,0 +1,31 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoMplGetTopupToken";
+
+message MplGetTopupToken {
+ Request request = 1;
+ uint64 charge_mobile_number = 2;
+ uint64 amount = 3;
+
+ enum Type {
+ IRANCELL_PREPAID = 0;
+ IRANCELL_WOW = 1;
+ IRANCELL_WIMAX = 2;
+ IRANCELL_POSTPAID = 3;
+ MCI = 4;
+ RIGHTEL = 5;
+ }
+ Type type = 4;
+}
+
+message MplGetTopupTokenResponse {
+ Response response = 1;
+ uint32 status = 2;
+ string token = 3;
+ uint32 expire_time = 4;
+ string message = 5;
+}
\ No newline at end of file
diff --git a/app/assets/proto/PushWalletPaymentVerified.proto b/app/assets/proto/PushWalletPaymentVerified.proto
new file mode 100644
index 0000000..1b9219b
--- /dev/null
+++ b/app/assets/proto/PushWalletPaymentVerified.proto
@@ -0,0 +1,11 @@
+syntax = "proto3";
+package proto;
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoPushWalletPaymentVerified";
+
+message PushWalletPaymentVerifiedResponse {
+ Response response = 1;
+ string token = 2;
+}
\ No newline at end of file
diff --git a/app/assets/proto/UserLogin.proto b/app/assets/proto/UserLogin.proto
index 07141e5..fd82e0e 100644
--- a/app/assets/proto/UserLogin.proto
+++ b/app/assets/proto/UserLogin.proto
@@ -31,4 +31,7 @@ message UserLoginResponse {
string secondary_node_name = 3;
bool update_available = 4;
uint32 chat_delete_message_for_both_period = 5;
+ bool wallet_active = 6;
+ bool mpl_active = 7;
+ bool wallet_agreement_accepted = 8;
}
\ No newline at end of file
diff --git a/app/assets/proto/UserRegister.proto b/app/assets/proto/UserRegister.proto
index 7d397f8..78196df 100644
--- a/app/assets/proto/UserRegister.proto
+++ b/app/assets/proto/UserRegister.proto
@@ -10,6 +10,13 @@ message UserRegister {
Request request = 1;
uint64 phone_number = 2;
string country_code = 3;
+
+ enum PreferenceMethod {
+ VERIFY_CODE_AUTO = 0;
+ VERIFY_CODE_SMS = 1;
+ VERIFY_CODE_CALL = 2;
+ }
+ PreferenceMethod preference_method = 4;
}
message UserRegisterResponse {
@@ -22,10 +29,12 @@ message UserRegisterResponse {
VERIFY_CODE_SMS = 0;
VERIFY_CODE_SOCKET = 1;
VERIFY_CODE_SMS_SOCKET = 2;
+ VERIFY_CODE_CALL = 3;
}
Method method = 5;
uint32 resend_delay = 6;
repeated uint64 sms_number = 7;
string verify_code_regex = 8;
uint32 verify_code_digit_count = 9;
+ bool call_method_supported = 10;
}
\ No newline at end of file
diff --git a/app/assets/proto/WalletGetAccessToken.proto b/app/assets/proto/WalletGetAccessToken.proto
new file mode 100644
index 0000000..253e94b
--- /dev/null
+++ b/app/assets/proto/WalletGetAccessToken.proto
@@ -0,0 +1,23 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoWalletGetAccessToken";
+
+message WalletGetAccessToken {
+ Request request = 1;
+}
+
+message WalletGetAccessTokenResponse {
+ Response response = 1;
+
+ enum TokenType {
+ BEARER = 0;
+ }
+ TokenType token_type = 2;
+
+ string access_token = 3;
+ uint32 expires_in = 4;
+}
\ No newline at end of file
diff --git a/app/assets/proto/WalletIdMapping.proto b/app/assets/proto/WalletIdMapping.proto
new file mode 100644
index 0000000..2b67463
--- /dev/null
+++ b/app/assets/proto/WalletIdMapping.proto
@@ -0,0 +1,17 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoWalletIdMapping";
+
+message WalletIdMapping {
+ Request request = 1;
+ string wallet_id = 2;
+}
+
+message WalletIdMappingResponse {
+ Response response = 1;
+ uint64 user_id = 2;
+}
\ No newline at end of file
diff --git a/app/assets/proto/WalletPaymentInit.proto b/app/assets/proto/WalletPaymentInit.proto
new file mode 100644
index 0000000..af0592c
--- /dev/null
+++ b/app/assets/proto/WalletPaymentInit.proto
@@ -0,0 +1,23 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+import "Global.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoWalletPaymentInit";
+
+message WalletPaymentInit {
+ Request request = 1;
+ Language language = 2;
+ string jwt = 3;
+ uint64 to_user_id = 4;
+ uint64 amount = 5;
+ string description = 6;
+}
+
+message WalletPaymentInitResponse {
+ Response response = 1;
+ string token = 2;
+ string public_key = 3;
+}
\ No newline at end of file
diff --git a/app/assets/proto/WalletRegister.proto b/app/assets/proto/WalletRegister.proto
new file mode 100644
index 0000000..68e25b7
--- /dev/null
+++ b/app/assets/proto/WalletRegister.proto
@@ -0,0 +1,15 @@
+syntax = "proto3";
+package proto;
+import "Request.proto";
+import "Response.proto";
+
+option java_package = "net.iGap.proto";
+option java_outer_classname = "ProtoWalletRegister";
+
+message WalletRegister {
+ Request request = 1;
+}
+
+message WalletRegisterResponse {
+ Response response = 1;
+}
\ No newline at end of file
diff --git a/docs/guide/v1/PushNotifications.md b/docs/guide/v1/PushNotifications.md
new file mode 100644
index 0000000..f735dad
--- /dev/null
+++ b/docs/guide/v1/PushNotifications.md
@@ -0,0 +1,46 @@
+# Possible Notifications
+
+## ROOM_SEND_MESSAGE
+
+| Type | Template Example | Text Arguments | Parameters |
+|------------ |---------- |------------------ |------------------ |
+| MESSAGE_TEXT | {1}: {2} | 1. Message author
2. Message body | roomId
messageId |
+| MESSAGE_NOTEXT | {1} sent you a message | 1. Message author | roomId
messageId |
+| MESSAGE_IMAGE | {1} sent you a photo | 1. Message author | roomId
messageId |
+| MESSAGE_VIDEO | {1} sent you a video | 1. Message author | roomId
messageId |
+| MESSAGE_AUDIO | {1} sent you a audio | 1. Message author | roomId
messageId |
+| MESSAGE_VOICE | {1} sent you a voice message | 1. Message author | roomId
messageId |
+| MESSAGE_GIF | {1} sent you a gif | 1. Message author | roomId
messageId |
+| MESSAGE_FILE | {1} sent you a file | 1. Message author | roomId
messageId |
+| MESSAGE_LOCATION | {1} sent you a location | 1. Message author | roomId
messageId |
+| MESSAGE_CONTACT | {1} shared a contact with you | 1. Message author | roomId
messageId |
+| GROUP_MESSAGE_TEXT | {1}@{2}: {3} | 1. Message author
2.Group title
3. Message body | roomId
messageId |
+| GROUP_MESSAGE_NOTEXT | {1} sent a message to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_IMAGE | {1} sent a photo to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_VIDEO | {1} sent a video to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_AUDIO | {1} sent a audio to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_VOICE | {1} sent a voice message to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_GIF | {1} sent a gif to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_FILE | {1} sent a file to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_LOCATION | {1} sent a location to the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| GROUP_MESSAGE_CONTACT | {1} shared a contact with you in the group {2} | 1. Message author
2.Group title | roomId
messageId |
+| CHANNEL_MESSAGE_TEXT | {1}: {2} | 1.Channel title
2. Message body | roomId
messageId |
+| CHANNEL_MESSAGE_NOTEXT | {1} posted a message | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_IMAGE | {1} posted a photo | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_VIDEO | {1} posted a video | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_AUDIO | {1} posted a audio | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_VOICE | {1} posted a voice message | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_GIF | {1} posted a gif | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_FILE | {1} posted a file | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_LOCATION | {1} posted a location | 1.Channel title | roomId
messageId |
+| CHANNEL_MESSAGE_CONTACT | {1} posted a contact | 1.Channel title | roomId
messageId |
+
+## SIGNALING_OFFER
+
+| Type | Template Example | Text Arguments | Parameters |
+|------------ |---------- |------------------ |------------------ |
+| SIGNALING_OFFER_VOICE_CALLING | Incoming voice call from {1} | 1. Peer name | |
+| SIGNALING_OFFER_VOICE_CALLING | Incoming video call from {1} | 1. Peer name | |
+| SIGNALING_OFFER_SCREEN_SHARING | Screen sharing request from {1} | 1. Peer name | |
+| SIGNALING_OFFER_SECRET_CHAT | Secret chat request from {1} | 1. Peer name | |
+
diff --git a/docs/guide/v1/README.md b/docs/guide/v1/README.md
index e5135de..a503952 100644
--- a/docs/guide/v1/README.md
+++ b/docs/guide/v1/README.md
@@ -12,5 +12,6 @@
* [Methods](request/README.md)
* [Reverse methods](reverse/README.md)
* [Push methods](push/README.md)
+* [Push notifications](PushNotifications.md)
* [iGap protocol](Protocol.md)
* [Errors](error/README.md) ([Quick reference](error/reference.md))
diff --git a/docs/guide/v1/error/README.md b/docs/guide/v1/error/README.md
index 8d6ee33..ffd96ea 100644
--- a/docs/guide/v1/error/README.md
+++ b/docs/guide/v1/error/README.md
@@ -93,10 +93,11 @@ You have exceeded the number of requests allowed
### Error 100 - USER_REGISTER_BAD_PAYLOAD
Bad payload for request [#100](../proto/README.md#action_100)
-| Minor Code | Detail | Reaction |
-|------------ |------------------------- |---------- |
-| 1 | Country code is invalid | * |
-| 2 | Username is invalid | * |
+| Minor Code | Detail | Reaction |
+|------------ |------------------------- |---------- |
+| 1 | Country code is invalid | * |
+| 2 | Username is invalid | * |
+| 3 | PreferenceMethod is invalid | * |
### Error 101 - USER_REGISTER_INTERNAL_SERVER_ERROR
Internal server error for request [#100](../proto/README.md#action_100)
@@ -221,6 +222,13 @@ Login failed
| * | * | Go to registration page |
| 4 | Your account is blocked | * |
+### Error 10170 - USER_LOGIN_ALREADY_LOGGED_IN
+You are forbidden to login again for request [#102](../proto/README.md#action_102)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
### Error 112 - USER_PROFILE_SET_NICKNAME_BAD_PAYLOAD
Bad payload for request [#105](../proto/README.md#action_105)
@@ -276,6 +284,7 @@ Bad payload for request [#106](../proto/README.md#action_106)
| 2 | First Name is not valid | * |
| 3 | Last Name is not valid | * |
| 4 | Force is not valid | * |
+| 5 | Too many contacts | * |
### Error 119 - USER_CONTACTS_IMPORT_INTERNAL_SERVER_ERROR
Internal server error for request [#106](../proto/README.md#action_106)
@@ -284,6 +293,13 @@ Internal server error for request [#106](../proto/README.md#action_106)
|------------ |-------- |---------- |
| * | * | * |
+### Error 10169 - USER_CONTACTS_IMPORT_FORBIDDEN
+You are forbidden to do the action for request [#106](../proto/README.md#action_106)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
### Error 120 - USER_CONTACTS_GET_LIST_BAD_PAYLOAD
Bad payload for request [#107](../proto/README.md#action_107)
@@ -521,6 +537,20 @@ Destruction Code for deleting user account has been entered incorrectly too many
|------------ |-------- |---------- |
| * | * | * |
+### Error 10171 - USER_DELETE_WALLET_RESTRICTION
+You are forbidden to do the action due to wallet restriction for request [#119](../proto/README.md#action_119)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 10172 - USER_DELETE_WALLET_BAD_GATEWAY
+Server was not able to get a valid or any response from the Wallet server for request [#119](../proto/README.md#action_119)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
### Error 159 - USER_PROFILE_GET_SELF_REMOVE_BAD_PAYLOAD
Bad payload for request [#121](../proto/README.md#action_121)
@@ -1376,6 +1406,7 @@ Bad payload for request [#201](../proto/README.md#action_201)
| 30 | Message is invalid | * |
| 31 | Attachment is invalid | * |
| 32 | **Message is too long** | * |
+| 33 | Random id is invalid | * |
### Error 204 - CHAT_SEND_MESSAGE_INTERNAL_SERVER_ERROR
Internal server error for request [#201](../proto/README.md#action_201)
@@ -1748,6 +1779,7 @@ Bad payload for request [#310](../proto/README.md#action_310)
| 30 | Message is invalid | * |
| 31 | Attachment is invalid | * |
| 32 | **Message is too long** | * |
+| 33 | Random id is invalid | * |
### Error 307 - GROUP_SEND_MESSAGE_INTERNAL_SERVER_ERROR
@@ -2330,6 +2362,31 @@ You are forbidden to do the action for request [#325](../proto/README.md#action_
| * | * | * |
+### Error 381 - GROUP_PIN_MESSAGE_BAD_PAYLOAD
+Bad payload for request [#326](../proto/README.md#action_326)
+
+| Minor Code | Detail | Reaction |
+|------------ |----------------------- |---------- |
+| 1 | Room_ID is invalid | * |
+| 2 | Message_ID is invalid | * |
+
+
+### Error 382 - GROUP_PIN_MESSAGE_INTERNAL_SERVER_ERROR
+Internal server error for request [#326](../proto/README.md#action_326)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 383 - GROUP_PIN_MESSAGE_FORBIDDEN
+You are forbidden to do the action for request [#326](../proto/README.md#action_326)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
# Channel Errors(4xx)
### Error 400 - CHANNEL_CREATE_BAD_PAYLOAD
@@ -2433,6 +2490,7 @@ Bad payload for request [#410](../proto/README.md#action_410)
| 30 | Message is invalid | * |
| 31 | Attachment is invalid | * |
| 32 | **Message is too long** | * |
+| 33 | Random id is invalid | * |
### Error 407 - CHANNEL_SEND_MESSAGE_INTERNAL_SERVER_ERROR
@@ -3029,6 +3087,56 @@ You are forbidden to do the action for request [#425](../proto/README.md#action_
| * | * | * |
+### Error 480 - CHANNEL_UPDATE_REACTION_STATUS_BAD_PAYLOAD
+Bad payload for request [#426](../proto/README.md#action_426)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------------- |---------- |
+| 1 | Room_ID is invalid | * |
+| 2 | reaction_status is invalid | * |
+
+
+### Error 481 - CHANNEL_UPDATE_REACTION_STATUS_INTERNAL_SERVER_ERROR
+Internal server error for request [#426](../proto/README.md#action_426)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 482 - CHANNEL_UPDATE_REACTION_STATUS_FORBIDDEN
+You are forbidden to do the action for request [#426](../proto/README.md#action_426)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 483 - CHANNEL_PIN_MESSAGE_BAD_PAYLOAD
+Bad payload for request [#427](../proto/README.md#action_427)
+
+| Minor Code | Detail | Reaction |
+|------------ |----------------------- |---------- |
+| 1 | Room_ID is invalid | * |
+| 2 | Message_ID is invalid | * |
+
+
+### Error 484 - CHANNEL_PIN_MESSAGE_INTERNAL_SERVER_ERROR
+Internal server error for request [#427](../proto/README.md#action_427)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 485 - CHANNEL_PIN_MESSAGE_FORBIDDEN
+You are forbidden to do the action for request [#427](../proto/README.md#action_427)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
# Info Errors(5xx)
### Error 500 - INFO_LOCATION_NOT_FOUND
Location could not be found for the request [#500](../proto/README.md#action_500)
@@ -3547,6 +3655,30 @@ You are forbidden to do the action for request [#616](../proto/README.md#action_
|------------ |-------- |---------- |
| * | * | * |
+### Error 660 - CLIENT_REGISTER_DEVICE_BAD_PAYLOAD
+Bad payload for request [#617](../proto/README.md#action_617)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------------------- |---------- |
+| 1 | token is invalid | * |
+| 2 | type is invalid | * |
+
+
+### Error 661 - CLIENT_REGISTER_DEVICE_INTERNAL_SERVER_ERROR
+You are forbidden to do the action for request [#617](../proto/README.md#action_617)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 662 - CLIENT_REGISTER_DEVICE_FORBIDDEN
+Internal server error for request [#617](../proto/README.md#action_617)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
# File Errors(7xx)
@@ -4193,6 +4325,276 @@ Bad payload for request [#1007](../proto/README.md#action_1007)
### Error 1020 - GEO_GET_CONFIGURATION_INTERNAL_SERVER_ERROR
Internal server error for request [#1007](../proto/README.md#action_1007)
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+# Wallet errors 90xx
+
+### Error 9000 - WALLET_GET_ACCESS_TOKEN_BAD_PAYLOAD
+Bad payload for request [#9000](../proto/README.md#action_9000)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| * | * | * |
+
+
+### Error 9001 - WALLET_GET_ACCESS_TOKEN_INTERNAL_SERVER_ERROR
+Internal server error for request [#9000](../proto/README.md#action_9000)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9002 - WALLET_GET_ACCESS_TOKEN_BAD_GATEWAY
+Server was not able to get a valid or any response from the Wallet server for request [#9000](../proto/README.md#action_9000)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9003 - WALLET_GET_ACCESS_TOKEN_FORBIDDEN
+You are forbidden to do the action for request [#9000](../proto/README.md#action_9000)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 9004 - WALLET_PAYMENT_INIT_BAD_PAYLOAD
+Bad payload for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| 1 | language is invalid | * |
+| 2 | jwt is invalid | * |
+| 3 | to_user_id is invalid | * |
+| 4 | amount is invalid | * |
+| 5 | description is invalid | * |
+
+
+### Error 9005 - WALLET_PAYMENT_INIT_INTERNAL_SERVER_ERROR
+Internal server error for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9006 - WALLET_PAYMENT_INIT_BAD_GATEWAY
+Server was not able to get a valid or any response from the Wallet server for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9007 - WALLET_PAYMENT_INIT_FORBIDDEN
+You are forbidden to do the action for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9008 - WALLET_PAYMENT_INIT_RECIPIENT_FORBIDDEN
+Recipient are forbidden for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9009 - WALLET_PAYMENT_INIT_GATEWAY_ERROR
+Error from Wallet server for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9010 - WALLET_PAYMENT_INIT_RECIPIENT_NOT_REGISTERED
+Recipient is not registered in wallet for request [#9001](../proto/README.md#action_9001)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 9011 - WALLET_REGISTER_BAD_PAYLOAD
+Bad payload for request [#9002](../proto/README.md#action_9002)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9012 - WALLET_REGISTER_INTERNAL_SERVER_ERROR
+Internal server error for request [#9002](../proto/README.md#action_9002)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9013 - WALLET_REGISTER_FORBIDDEN
+You are forbidden to do the action for request [#9002](../proto/README.md#action_9002)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 9014 - WALLET_ID_MAPPING_BAD_PAYLOAD
+Bad payload for request [#9003](../proto/README.md#action_9003)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| 1 | wallet_id is invalid | * |
+
+
+### Error 9015 - WALLET_ID_MAPPING_INTERNAL_SERVER_ERROR
+Internal server error for request [#9003](../proto/README.md#action_9003)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9016 - WALLET_ID_MAPPING_NOT_FOUND
+No such user was found for request [#9003](../proto/README.md#action_9003)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+# Mpl errors 90xx
+
+### Error 9100 - MPL_GET_BILL_TOKEN_BAD_PAYLOAD
+Bad payload for request [#9100](../proto/README.md#action_9100)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| 1 | bill_id is invalid | * |
+| 2 | pay_id is invalid | * |
+
+
+### Error 9101 - MPL_GET_BILL_TOKEN_INTERNAL_SERVER_ERROR
+Internal server error for request [#9100](../proto/README.md#action_9100)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9102 - MPL_GET_BILL_TOKEN_BAD_GATEWAY
+Server was not able to get a valid or any response from the Mpl server for request [#9100](../proto/README.md#action_9100)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9103 - MPL_GET_BILL_TOKEN_FORBIDDEN
+You are forbidden to do the action for request [#9100](../proto/README.md#action_9100)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 9104 - MPL_GET_TOPUP_TOKEN_BAD_PAYLOAD
+Bad payload for request [#9101](../proto/README.md#action_9101)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| 1 | charge_mobile_number is invalid | * |
+| 2 | amount is invalid | * |
+| 2 | type is invalid | * |
+
+
+### Error 9105 - MPL_GET_TOPUP_TOKEN_INTERNAL_SERVER_ERROR
+Internal server error for request [#9101](../proto/README.md#action_9101)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9106 - MPL_GET_TOPUP_TOKEN_BAD_GATEWAY
+Server was not able to get a valid or any response from the Mpl server for request [#9101](../proto/README.md#action_9101)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9107 - MPL_GET_TOPUP_TOKEN_FORBIDDEN
+You are forbidden to do the action for request [#9101](../proto/README.md#action_9101)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+# BillInquiry errors 92xx
+
+### Error 9200 - BILL_INQUIRY_MCI_BAD_PAYLOAD
+Bad payload for request [#9200](../proto/README.md#action_9200)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| 1 | mobile_number is invalid | * |
+
+
+### Error 9201 - BILL_INQUIRY_MCI_INTERNAL_SERVER_ERROR
+Internal server error for request [#9200](../proto/README.md#action_9200)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9202 - BILL_INQUIRY_MCI_BAD_GATEWAY
+Server was not able to get a valid or any response from the bill inquiry server for request [#9200](../proto/README.md#action_9200)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9203 - BILL_INQUIRY_MCI_FORBIDDEN
+You are forbidden to do the action for request [#9200](../proto/README.md#action_9200)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+### Error 9204 - BILL_INQUIRY_TELECOM_BAD_PAYLOAD
+Bad payload for request [#9201](../proto/README.md#action_9201)
+
+| Minor Code | Detail | Reaction |
+|------------ |---------------- |---------- |
+| 1 | province_code is invalid | * |
+| 2 | telephone_number is invalid | * |
+
+
+### Error 9205 - BILL_INQUIRY_TELECOM_INTERNAL_SERVER_ERROR
+Internal server error for request [#9201](../proto/README.md#action_9201)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9206 - BILL_INQUIRY_TELECOM_BAD_GATEWAY
+Server was not able to get a valid or any response from the bill inquiry server for request [#9201](../proto/README.md#action_9201)
+
+| Minor Code | Detail | Reaction |
+|------------ |-------- |---------- |
+| * | * | * |
+
+
+### Error 9207 - BILL_INQUIRY_TELECOM_FORBIDDEN
+You are forbidden to do the action for request [#9201](../proto/README.md#action_9201)
+
| Minor Code | Detail | Reaction |
|------------ |-------- |---------- |
| * | * | * |
\ No newline at end of file
diff --git a/docs/guide/v1/error/reference.md b/docs/guide/v1/error/reference.md
index 539e61a..4ab7e9f 100644
--- a/docs/guide/v1/error/reference.md
+++ b/docs/guide/v1/error/reference.md
@@ -35,6 +35,7 @@
* 109 - [USER_LOGIN_BAD_PAYLOAD](README.md#error-109-user_login_bad_payload)
* 110 - [USER_LOGIN_INTERNAL_SERVER_ERROR](README.md#error-110-user_login_internal_server_error)
* 111 - [USER_LOGIN_FAILED](README.md#error-111-user_login_failed)
+* 10170 - [USER_LOGIN_ALREADY_LOGGED_IN](README.md#error-10170-user_login_already_logged_in)
---
@@ -55,6 +56,7 @@
* 118 - [USER_CONTACTS_IMPORT_BAD_PAYLOAD](README.md#error-118-user_contacts_import_bad_payload)
* 119 - [USER_CONTACTS_IMPORT_INTERNAL_SERVER_ERROR](README.md#error-119-user_contacts_import_internal_server_error)
+* 10169 - [USER_CONTACTS_IMPORT_FORBIDDEN](README.md#error-10169-user_contacts_import_forbidden)
---
@@ -124,6 +126,8 @@
* 156 - [USER_DELETE_INVALID_TOKEN](README.md#error-156-user_delete_invalid_token)
* 157 - [USER_DELETE_EXPIRED_TOKEN](README.md#error-157-user_delete_expired_token)
* 158 - [USER_DELETE_MAX_TRY_LOCK](README.md#error-158-user_delete_max_try_lock)
+* 10171 - [USER_DELETE_WALLET_RESTRICTION](README.md#error-10171-user_delete_wallet_restriction)
+* 10172 - [USER_DELETE_WALLET_BAD_GATEWAY](README.md#error-10172-user_delete_wallet_bad_gateway)
---
@@ -551,6 +555,12 @@
* 377 - [GROUP_EDIT_MESSAGE_INTERNAL_SERVER_ERROR](README.md#error-377-group_edit_message_internal_server_error)
* 378 - [GROUP_EDIT_MESSAGE_FORBIDDEN](README.md#error-378-group_edit_message_forbidden)
+---
+
+* 381 - [GROUP_PIN_MESSAGE_BAD_PAYLOAD](README.md#error-381-group_pin_message_bad_payload)
+* 382 - [GROUP_PIN_MESSAGE_INTERNAL_SERVER_ERROR](README.md#error-382-group_pin_message_internal_server_error)
+* 383 - [GROUP_PIN_MESSAGE_FORBIDDEN](README.md#error-383-group_pin_message_forbidden)
+
# Channel room errors 4xx
* 400 - [CHANNEL_CREATE_BAD_PAYLOAD](README.md#error-400-channel_create_bad_payload)
@@ -709,6 +719,18 @@
* 476 - [CHANNEL_EDIT_MESSAGE_INTERNAL_SERVER_ERROR](README.md#error-476-channel_edit_message_internal_server_error)
* 477 - [CHANNEL_EDIT_MESSAGE_FORBIDDEN](README.md#error-477-channel_edit_message_forbidden)
+---
+
+* 480 - [CHANNEL_UPDATE_REACTION_STATUS_BAD_PAYLOAD](README.md#error-480-channel_update_reaction_status_bad_payload)
+* 481 - [CHANNEL_UPDATE_REACTION_STATUS_INTERNAL_SERVER_ERROR](README.md#error-481-channel_update_reaction_status_internal_server_error)
+* 482 - [CHANNEL_UPDATE_REACTION_STATUS_FORBIDDEN](README.md#error-482-channel_update_reaction_status_forbidden)
+
+---
+
+* 483 - [CHANNEL_PIN_MESSAGE_BAD_PAYLOAD](README.md#error-483-channel_pin_message_bad_payload)
+* 484 - [CHANNEL_PIN_MESSAGE_INTERNAL_SERVER_ERROR](README.md#error-484-channel_pin_message_internal_server_error)
+* 485 - [CHANNEL_PIN_MESSAGE_FORBIDDEN](README.md#error-485-channel_pin_message_forbidden)
+
# Info errors 5xx
* 500 - [INFO_LOCATION_NOT_FOUND](README.md#error-500-info_location_not_found)
@@ -847,6 +869,12 @@
* 658 - [CLIENT_ROOM_REPORT_REPORTED_BEFORE](README.md#error-658-client_room_report_reported_before)
* 659 - [CLIENT_ROOM_REPORT_FORBIDDEN](README.md#error-659-client_room_report_forbidden)
+---
+
+* 660 - [CLIENT_REGISTER_DEVICE_BAD_PAYLOAD](README.md#error-660-client_register_device_bad_payload)
+* 661 - [CLIENT_REGISTER_DEVICE_INTERNAL_SERVER_ERROR](README.md#error-661-client_register_device_internal_server_error)
+* 662 - [CLIENT_REGISTER_DEVICE_FORBIDDEN](README.md#error-662-client_register_device_forbidden)
+
# File errors 7xx
* 700 - [FILE_UPLOAD_OPTION_BAD_PAYLOAD](README.md#error-700-file_upload_option_bad_payload)
@@ -1008,4 +1036,61 @@
---
* 1019 - [GEO_GET_CONFIGURATION_BAD_PAYLOAD](README.md#error-1019-geo_get_configuration_bad_payload)
-* 1020 - [GEO_GET_CONFIGURATION_INTERNAL_SERVER_ERROR](README.md#error-1020-geo_get_configuration_internal_server_error)
\ No newline at end of file
+* 1020 - [GEO_GET_CONFIGURATION_INTERNAL_SERVER_ERROR](README.md#error-1020-geo_get_configuration_internal_server_error)
+
+# Wallet 90xx
+
+* 9000 - [WALLET_GET_ACCESS_TOKEN_BAD_PAYLOAD](README.md#error-9000-wallet_get_access_token_bad_payload)
+* 9001 - [WALLET_GET_ACCESS_TOKEN_INTERNAL_SERVER_ERROR](README.md#error-9001-wallet_get_access_token_internal_server_error)
+* 9002 - [WALLET_GET_ACCESS_TOKEN_BAD_GATEWAY](README.md#error-9002-wallet_get_access_token_bad_gateway)
+* 9003 - [WALLET_GET_ACCESS_TOKEN_FORBIDDEN](README.md#error-9003-wallet_get_access_token_forbidden)
+
+---
+
+* 9004 - [WALLET_PAYMENT_INIT_BAD_PAYLOAD](README.md#error-9004-wallet_payment_init_bad_payload)
+* 9005 - [WALLET_PAYMENT_INIT_INTERNAL_SERVER_ERROR](README.md#error-9005-wallet_payment_init_internal_server_error)
+* 9006 - [WALLET_PAYMENT_INIT_BAD_GATEWAY](README.md#error-9006-wallet_payment_init_bad_gateway)
+* 9007 - [WALLET_PAYMENT_INIT_FORBIDDEN](README.md#error-9007-wallet_payment_init_forbidden)
+* 9008 - [WALLET_PAYMENT_INIT_RECIPIENT_FORBIDDEN](README.md#error-9008-wallet_payment_init_recipient_forbidden)
+* 9009 - [WALLET_PAYMENT_INIT_GATEWAY_ERROR](README.md#error-9009-wallet_payment_init_gateway_error)
+* 9010 - [WALLET_PAYMENT_INIT_RECIPIENT_NOT_REGISTERED](README.md#error-9010-wallet_payment_init_recipient_not_registered)
+
+---
+
+* 9011 - [WALLET_REGISTER_BAD_PAYLOAD](README.md#error-9011-wallet_register_bad_payload)
+* 9012 - [WALLET_REGISTER_INTERNAL_SERVER_ERROR](README.md#error-9012-wallet_register_internal_server_error)
+* 9013 - [WALLET_REGISTER_FORBIDDEN](README.md#error-9013-wallet_register_forbidden)
+
+---
+
+* 9014 - [WALLET_ID_MAPPING_BAD_PAYLOAD](README.md#error-9014-wallet_id_mapping_bad_payload)
+* 9015 - [WALLET_ID_MAPPING_INTERNAL_SERVER_ERROR](README.md#error-9015-wallet_id_mapping_internal_server_error)
+* 9016 - [WALLET_ID_MAPPING_NOT_FOUND](README.md#error-9016-wallet_id_mapping_not_found)
+
+# Mpl 91xx
+
+* 9100 - [MPL_GET_BILL_TOKEN_BAD_PAYLOAD](README.md#error-9100-mpl_get_bill_token_bad_payload)
+* 9101 - [MPL_GET_BILL_TOKEN_INTERNAL_SERVER_ERROR](README.md#error-9101-mpl_get_bill_token_internal_server_error)
+* 9102 - [MPL_GET_BILL_TOKEN_BAD_GATEWAY](README.md#error-9102-mpl_get_bill_token_bad_gateway)
+* 9103 - [MPL_GET_BILL_TOKEN_FORBIDDEN](README.md#error-9103-mpl_get_bill_token_forbidden)
+
+---
+
+* 9104 - [MPL_GET_TOPUP_TOKEN_BAD_PAYLOAD](README.md#error-9104-mpl_get_topup_token_bad_payload)
+* 9105 - [MPL_GET_TOPUP_TOKEN_INTERNAL_SERVER_ERROR](README.md#error-9105-mpl_get_topup_token_internal_server_error)
+* 9106 - [MPL_GET_TOPUP_TOKEN_BAD_GATEWAY](README.md#error-9106-mpl_get_topup_token_bad_gateway)
+* 9107 - [MPL_GET_TOPUP_TOKEN_FORBIDDEN](README.md#error-9107-mpl_get_topup_token_forbidden)
+
+# BillInquiry 92xx
+
+* 9200 - [BILL_INQUIRY_MCI_BAD_PAYLOAD](README.md#error-9200-bill_inquiry_mci_bad_payload)
+* 9201 - [BILL_INQUIRY_MCI_INTERNAL_SERVER_ERROR](README.md#error-9201-bill_inquiry_mci_internal_server_error)
+* 9202 - [BILL_INQUIRY_MCI_BAD_GATEWAY](README.md#error-9202-bill_inquiry_mci_bad_gateway)
+* 9203 - [BILL_INQUIRY_MCI_FORBIDDEN](README.md#error-9203-bill_inquiry_mci_forbidden)
+
+---
+
+* 9204 - [BILL_INQUIRY_TELECOM_BAD_PAYLOAD](README.md#error-9204-bill_inquiry_telecom_bad_payload)
+* 9205 - [BILL_INQUIRY_TELECOM_INTERNAL_SERVER_ERROR](README.md#error-9205-bill_inquiry_telecom_internal_server_error)
+* 9206 - [BILL_INQUIRY_TELECOM_BAD_GATEWAY](README.md#error-9206-bill_inquiry_telecom_bad_gateway)
+* 9207 - [BILL_INQUIRY_TELECOM_FORBIDDEN](README.md#error-9207-bill_inquiry_telecom_forbidden)
\ No newline at end of file
diff --git a/docs/guide/v1/proto/README.md b/docs/guide/v1/proto/README.md
index a1041bd..7836160 100644
--- a/docs/guide/v1/proto/README.md
+++ b/docs/guide/v1/proto/README.md
@@ -200,63 +200,69 @@
| 30324 | [Details](GroupRevokeLinkResponse.md) | [GroupRevokeLinkResponse](../../../../app/assets/proto/GroupRevokeLink.proto) |
| 325 | [Details](GroupEditMessage.md) | [GroupEditMessage](../../../../app/assets/proto/GroupEditMessage.proto) |
| 30325 | [Details](GroupEditMessageResponse.md) | [GroupEditMessageResponse](../../../../app/assets/proto/GroupEditMessage.proto) |
+| 326 | [Details](GroupPinMessage.md) | [GroupPinMessage](../../../../app/assets/proto/GroupPinMessage.proto) |
+| 30326 | [Details](GroupPinMessageResponse.md) | [GroupPinMessageResponse](../../../../app/assets/proto/GroupPinMessage.proto) |
# Channel 4xx , 304xx
-| Id |Details | Proto file |
-|---- |----------------------------------- |------------------------------------------------------------------- |
-| 400 | [Details](ChannelCreate.md) | [ChannelCreate](../../../../app/assets/proto/ChannelCreate.proto) |
-| 30400 | [Details](ChannelCreateResponse.md) | [ChannelCreateResponse](../../../../app/assets/proto/ChannelCreate.proto) |
-| 401 | [Details](ChannelAddMember.md) | [ChannelAddMember](../../../../app/assets/proto/ChannelAddMember.proto) |
-| 30401 | [Details](ChannelAddMemberResponse.md) | [ChannelAddMemberResponse](../../../../app/assets/proto/ChannelAddMember.proto) |
-| 402 | [Details](ChannelAddAdmin.md) | [ChannelAddAdmin](../../../../app/assets/proto/ChannelAddAdmin.proto) |
-| 30402 | [Details](ChannelAddAdminResponse.md) | [ChannelAddAdminResponse](../../../../app/assets/proto/ChannelAddAdmin.proto) |
-| 403 | [Details](ChannelAddModerator.md) | [ChannelAddModerator](../../../../app/assets/proto/ChannelAddModerator.proto) |
-| 30403 | [Details](ChannelAddModeratorResponse.md) | [ChannelAddModeratorResponse](../../../../app/assets/proto/ChannelAddModerator.proto) |
-| 404 | [Details](ChannelDelete.md) | [ChannelDelete](../../../../app/assets/proto/ChannelDelete.proto) |
-| 30404 | [Details](ChannelDeleteResponse.md) | [ChannelDeleteResponse](../../../../app/assets/proto/ChannelDelete.proto) |
-| 405 | [Details](ChannelEdit.md) | [ChannelEdit](../../../../app/assets/proto/ChannelEdit.proto) |
-| 30405 | [Details](ChannelEditResponse.md) | [ChannelEditResponse](../../../../app/assets/proto/ChannelEdit.proto) |
-| 406 | [Details](ChannelKickAdmin.md) | [ChannelKickAdmin](../../../../app/assets/proto/ChannelKickAdmin.proto) |
-| 30406 | [Details](ChannelKickAdminResponse.md) | [ChannelKickAdminResponse](../../../../app/assets/proto/ChannelKickAdmin.proto) |
-| 407 | [Details](ChannelKickMember.md) | [ChannelKickMember](../../../../app/assets/proto/ChannelKickMember.proto) |
-| 30407 | [Details](ChannelKickMemberResponse.md) | [ChannelKickMemberResponse](../../../../app/assets/proto/ChannelKickMember.proto) |
-| 408 | [Details](ChannelKickModerator.md) | [ChannelKickModerator](../../../../app/assets/proto/ChannelKickModerator.proto) |
-| 30408 | [Details](ChannelKickModeratorResponse.md) | [ChannelKickModeratorResponse](../../../../app/assets/proto/ChannelKickModerator.proto) |
-| 409 | [Details](ChannelLeft.md) | [ChannelLeft](../../../../app/assets/proto/ChannelLeft.proto) |
-| 30409 | [Details](ChannelLeftResponse.md) | [ChannelLeftResponse](../../../../app/assets/proto/ChannelLeft.proto) |
-| 410 | [Details](ChannelSendMessage.md) | [ChannelSendMessage](../../../../app/assets/proto/ChannelSendMessage.proto) |
-| 30410 | [Details](ChannelSendMessageResponse.md) | [ChannelSendMessageResponse](../../../../app/assets/proto/ChannelSendMessage.proto) |
-| 411 | [Details](ChannelDeleteMessage.md) | [ChannelDeleteMessage](../../../../app/assets/proto/ChannelDeleteMessage.proto) |
-| 30411 | [Details](ChannelDeleteMessageResponse.md) | [ChannelDeleteMessageResponse](../../../../app/assets/proto/ChannelDeleteMessage.proto) |
-| 412 | [Details](ChannelAvatarAdd.md) | [ChannelAvatarAdd](../../../../app/assets/proto/ChannelAvatarAdd.proto) |
-| 30412 | [Details](ChannelAvatarAddResponse.md) | [ChannelAvatarAddResponse](../../../../app/assets/proto/ChannelAvatarAdd.proto) |
-| 413 | [Details](ChannelAvatarDelete.md) | [ChannelAvatarDelete](../../../../app/assets/proto/ChannelAvatarDelete.proto) |
-| 30413 | [Details](ChannelAvatarDeleteResponse.md) | [ChannelAvatarDeleteResponse](../../../../app/assets/proto/ChannelAvatarDelete.proto) |
-| 414 | [Details](ChannelAvatarGetList.md) | [ChannelAvatarGetList](../../../../app/assets/proto/ChannelAvatarGetList.proto) |
-| 30414 | [Details](ChannelAvatarGetListResponse.md) | [ChannelAvatarGetListResponse](../../../../app/assets/proto/ChannelAvatarGetList.proto) |
-| 415 | [Details](ChannelUpdateDraft.md) | [ChannelUpdateDraft](../../../../app/assets/proto/ChannelUpdateDraft.proto) |
-| 30415 | [Details](ChannelUpdateDraftResponse.md) | [ChannelUpdateDraftResponse](../../../../app/assets/proto/ChannelUpdateDraft.proto) |
-| 416 | [Details](ChannelGetDraft.md) | [ChannelGetDraft](../../../../app/assets/proto/ChannelGetDraft.proto) |
-| 30416 | [Details](ChannelGetDraftResponse.md) | [ChannelGetDraftResponse](../../../../app/assets/proto/ChannelGetDraft.proto) |
-| 417 | [Details](ChannelGetMemberList.md) | [ChannelGetMemberList](../../../../app/assets/proto/ChannelGetMemberList.proto) |
-| 30417 | [Details](ChannelGetMemberListResponse.md) | [ChannelGetMemberListResponse](../../../../app/assets/proto/ChannelGetMemberList.proto) |
-| 418 | [Details](ChannelCheckUsername.md) | [ChannelCheckUsername](../../../../app/assets/proto/ChannelCheckUsername.proto) |
-| 30418 | [Details](ChannelCheckUsernameResponse.md) | [ChannelCheckUsernameResponse](../../../../app/assets/proto/ChannelCheckUsername.proto) |
-| 419 | [Details](ChannelUpdateUsername.md) | [ChannelUpdateUsername](../../../../app/assets/proto/ChannelUpdateUsername.proto) |
-| 30419 | [Details](ChannelUpdateUsernameResponse.md) | [ChannelUpdateUsernameResponse](../../../../app/assets/proto/ChannelUpdateUsername.proto) |
-| 420 | [Details](ChannelRemoveUsername.md) | [ChannelRemoveUsername](../../../../app/assets/proto/ChannelRemoveUsername.proto) |
-| 30420 | [Details](ChannelRemoveUsernameResponse.md) | [ChannelRemoveUsernameResponse](../../../../app/assets/proto/ChannelRemoveUsername.proto) |
-| 421 | [Details](ChannelRevokeLink.md) | [ChannelRevokeLink](../../../../app/assets/proto/ChannelRevokeLink.proto) |
-| 30421 | [Details](ChannelRevokeLinkResponse.md) | [ChannelRevokeLinkResponse](../../../../app/assets/proto/ChannelRevokeLink.proto) |
-| 422 | [Details](ChannelUpdateSignature.md) | [ChannelUpdateSignature](../../../../app/assets/proto/ChannelUpdateSignature.proto) |
-| 30422 | [Details](ChannelUpdateSignatureResponse.md) | [ChannelUpdateSignatureResponse](../../../../app/assets/proto/ChannelUpdateSignature.proto) |
-| 423 | [Details](ChannelGetMessagesStats.md) | [ChannelGetMessagesStats](../../../../app/assets/proto/ChannelGetMessagesStats.proto) |
-| 30423 | [Details](ChannelGetMessagesStatsResponse.md) | [ChannelGetMessagesStatsResponse](../../../../app/assets/proto/ChannelGetMessagesStats.proto) |
-| 424 | [Details](ChannelAddMessageReaction.md) | [ChannelAddMessageReaction](../../../../app/assets/proto/ChannelAddMessageReaction.proto) |
-| 30424 | [Details](ChannelAddMessageReactionResponse.md) | [ChannelAddMessageReactionResponse](../../../../app/assets/proto/ChannelAddMessageReaction.proto) |
-| 425 | [Details](ChannelEditMessage.md) | [ChannelEditMessage](../../../../app/assets/proto/ChannelEditMessage.proto) |
-| 30425 | [Details](ChannelEditMessageResponse.md) | [ChannelEditMessageResponse](../../../../app/assets/proto/ChannelEditMessage.proto) |
+| Id |Details | Proto file |
+|---- |----------------------------------- |------------------------------------------------------------------- |
+| 400 | [Details](ChannelCreate.md) | [ChannelCreate](../../../../app/assets/proto/ChannelCreate.proto) |
+| 30400 | [Details](ChannelCreateResponse.md) | [ChannelCreateResponse](../../../../app/assets/proto/ChannelCreate.proto) |
+| 401 | [Details](ChannelAddMember.md) | [ChannelAddMember](../../../../app/assets/proto/ChannelAddMember.proto) |
+| 30401 | [Details](ChannelAddMemberResponse.md) | [ChannelAddMemberResponse](../../../../app/assets/proto/ChannelAddMember.proto) |
+| 402 | [Details](ChannelAddAdmin.md) | [ChannelAddAdmin](../../../../app/assets/proto/ChannelAddAdmin.proto) |
+| 30402 | [Details](ChannelAddAdminResponse.md) | [ChannelAddAdminResponse](../../../../app/assets/proto/ChannelAddAdmin.proto) |
+| 403 | [Details](ChannelAddModerator.md) | [ChannelAddModerator](../../../../app/assets/proto/ChannelAddModerator.proto) |
+| 30403 | [Details](ChannelAddModeratorResponse.md) | [ChannelAddModeratorResponse](../../../../app/assets/proto/ChannelAddModerator.proto) |
+| 404 | [Details](ChannelDelete.md) | [ChannelDelete](../../../../app/assets/proto/ChannelDelete.proto) |
+| 30404 | [Details](ChannelDeleteResponse.md) | [ChannelDeleteResponse](../../../../app/assets/proto/ChannelDelete.proto) |
+| 405 | [Details](ChannelEdit.md) | [ChannelEdit](../../../../app/assets/proto/ChannelEdit.proto) |
+| 30405 | [Details](ChannelEditResponse.md) | [ChannelEditResponse](../../../../app/assets/proto/ChannelEdit.proto) |
+| 406 | [Details](ChannelKickAdmin.md) | [ChannelKickAdmin](../../../../app/assets/proto/ChannelKickAdmin.proto) |
+| 30406 | [Details](ChannelKickAdminResponse.md) | [ChannelKickAdminResponse](../../../../app/assets/proto/ChannelKickAdmin.proto) |
+| 407 | [Details](ChannelKickMember.md) | [ChannelKickMember](../../../../app/assets/proto/ChannelKickMember.proto) |
+| 30407 | [Details](ChannelKickMemberResponse.md) | [ChannelKickMemberResponse](../../../../app/assets/proto/ChannelKickMember.proto) |
+| 408 | [Details](ChannelKickModerator.md) | [ChannelKickModerator](../../../../app/assets/proto/ChannelKickModerator.proto) |
+| 30408 | [Details](ChannelKickModeratorResponse.md) | [ChannelKickModeratorResponse](../../../../app/assets/proto/ChannelKickModerator.proto) |
+| 409 | [Details](ChannelLeft.md) | [ChannelLeft](../../../../app/assets/proto/ChannelLeft.proto) |
+| 30409 | [Details](ChannelLeftResponse.md) | [ChannelLeftResponse](../../../../app/assets/proto/ChannelLeft.proto) |
+| 410 | [Details](ChannelSendMessage.md) | [ChannelSendMessage](../../../../app/assets/proto/ChannelSendMessage.proto) |
+| 30410 | [Details](ChannelSendMessageResponse.md) | [ChannelSendMessageResponse](../../../../app/assets/proto/ChannelSendMessage.proto) |
+| 411 | [Details](ChannelDeleteMessage.md) | [ChannelDeleteMessage](../../../../app/assets/proto/ChannelDeleteMessage.proto) |
+| 30411 | [Details](ChannelDeleteMessageResponse.md) | [ChannelDeleteMessageResponse](../../../../app/assets/proto/ChannelDeleteMessage.proto) |
+| 412 | [Details](ChannelAvatarAdd.md) | [ChannelAvatarAdd](../../../../app/assets/proto/ChannelAvatarAdd.proto) |
+| 30412 | [Details](ChannelAvatarAddResponse.md) | [ChannelAvatarAddResponse](../../../../app/assets/proto/ChannelAvatarAdd.proto) |
+| 413 | [Details](ChannelAvatarDelete.md) | [ChannelAvatarDelete](../../../../app/assets/proto/ChannelAvatarDelete.proto) |
+| 30413 | [Details](ChannelAvatarDeleteResponse.md) | [ChannelAvatarDeleteResponse](../../../../app/assets/proto/ChannelAvatarDelete.proto) |
+| 414 | [Details](ChannelAvatarGetList.md) | [ChannelAvatarGetList](../../../../app/assets/proto/ChannelAvatarGetList.proto) |
+| 30414 | [Details](ChannelAvatarGetListResponse.md) | [ChannelAvatarGetListResponse](../../../../app/assets/proto/ChannelAvatarGetList.proto) |
+| 415 | [Details](ChannelUpdateDraft.md) | [ChannelUpdateDraft](../../../../app/assets/proto/ChannelUpdateDraft.proto) |
+| 30415 | [Details](ChannelUpdateDraftResponse.md) | [ChannelUpdateDraftResponse](../../../../app/assets/proto/ChannelUpdateDraft.proto) |
+| 416 | [Details](ChannelGetDraft.md) | [ChannelGetDraft](../../../../app/assets/proto/ChannelGetDraft.proto) |
+| 30416 | [Details](ChannelGetDraftResponse.md) | [ChannelGetDraftResponse](../../../../app/assets/proto/ChannelGetDraft.proto) |
+| 417 | [Details](ChannelGetMemberList.md) | [ChannelGetMemberList](../../../../app/assets/proto/ChannelGetMemberList.proto) |
+| 30417 | [Details](ChannelGetMemberListResponse.md) | [ChannelGetMemberListResponse](../../../../app/assets/proto/ChannelGetMemberList.proto) |
+| 418 | [Details](ChannelCheckUsername.md) | [ChannelCheckUsername](../../../../app/assets/proto/ChannelCheckUsername.proto) |
+| 30418 | [Details](ChannelCheckUsernameResponse.md) | [ChannelCheckUsernameResponse](../../../../app/assets/proto/ChannelCheckUsername.proto) |
+| 419 | [Details](ChannelUpdateUsername.md) | [ChannelUpdateUsername](../../../../app/assets/proto/ChannelUpdateUsername.proto) |
+| 30419 | [Details](ChannelUpdateUsernameResponse.md) | [ChannelUpdateUsernameResponse](../../../../app/assets/proto/ChannelUpdateUsername.proto) |
+| 420 | [Details](ChannelRemoveUsername.md) | [ChannelRemoveUsername](../../../../app/assets/proto/ChannelRemoveUsername.proto) |
+| 30420 | [Details](ChannelRemoveUsernameResponse.md) | [ChannelRemoveUsernameResponse](../../../../app/assets/proto/ChannelRemoveUsername.proto) |
+| 421 | [Details](ChannelRevokeLink.md) | [ChannelRevokeLink](../../../../app/assets/proto/ChannelRevokeLink.proto) |
+| 30421 | [Details](ChannelRevokeLinkResponse.md) | [ChannelRevokeLinkResponse](../../../../app/assets/proto/ChannelRevokeLink.proto) |
+| 422 | [Details](ChannelUpdateSignature.md) | [ChannelUpdateSignature](../../../../app/assets/proto/ChannelUpdateSignature.proto) |
+| 30422 | [Details](ChannelUpdateSignatureResponse.md) | [ChannelUpdateSignatureResponse](../../../../app/assets/proto/ChannelUpdateSignature.proto) |
+| 423 | [Details](ChannelGetMessagesStats.md) | [ChannelGetMessagesStats](../../../../app/assets/proto/ChannelGetMessagesStats.proto) |
+| 30423 | [Details](ChannelGetMessagesStatsResponse.md) | [ChannelGetMessagesStatsResponse](../../../../app/assets/proto/ChannelGetMessagesStats.proto) |
+| 424 | [Details](ChannelAddMessageReaction.md) | [ChannelAddMessageReaction](../../../../app/assets/proto/ChannelAddMessageReaction.proto) |
+| 30424 | [Details](ChannelAddMessageReactionResponse.md) | [ChannelAddMessageReactionResponse](../../../../app/assets/proto/ChannelAddMessageReaction.proto) |
+| 425 | [Details](ChannelEditMessage.md) | [ChannelEditMessage](../../../../app/assets/proto/ChannelEditMessage.proto) |
+| 30425 | [Details](ChannelEditMessageResponse.md) | [ChannelEditMessageResponse](../../../../app/assets/proto/ChannelEditMessage.proto) |
+| 426 | [Details](ChannelUpdateReactionStatus.md) | [ChannelUpdateReactionStatus](../../../../app/assets/proto/ChannelUpdateReactionStatus.proto) |
+| 30426 | [Details](ChannelUpdateReactionStatusResponse.md) | [ChannelUpdateReactionStatusResponse](../../../../app/assets/proto/ChannelUpdateReactionStatus.proto) |
+| 427 | [Details](ChannelPinMessage.md) | [ChannelPinMessage](../../../../app/assets/proto/ChannelPinMessage.proto) |
+| 30427 | [Details](ChannelPinMessageResponse.md) | [ChannelPinMessageResponse](../../../../app/assets/proto/ChannelPinMessage.proto) |
# Info 5xx , 305xx
@@ -311,6 +317,8 @@
| 30615 | [Details](ClientPinRoomResponse.md) | [ClientPinRoomResponse](../../../../app/assets/proto/ClientPinRoom.proto) |
| 616 | [Details](ClientRoomReport.md) | [ClientRoomReport](../../../../app/assets/proto/ClientRoomReport.proto) |
| 30616 | [Details](ClientRoomReportResponse.md) | [ClientRoomReportResponse](../../../../app/assets/proto/ClientRoomReport.proto) |
+| 617 | [Details](ClientRegisterDevice.md) | [ClientRegisterDevice](../../../../app/assets/proto/ClientRegisterDevice.proto) |
+| 30617 | [Details](ClientRegisterDeviceResponse.md) | [ClientRegisterDeviceResponse](../../../../app/assets/proto/ClientRegisterDevice.proto) |
# File 7xx , 307xx
@@ -390,6 +398,39 @@
| 1007 | [Details](GeoGetConfiguration.md) | [GeoGetConfiguration](../../../../app/assets/proto/GeoGetConfiguration.proto) |
| 31007 | [Details](GeoGetConfigurationResponse.md) | [GeoGetConfigurationResponse](../../../../app/assets/proto/GeoGetConfiguration.proto) |
+# Wallet 90xx
+
+| Id |Details | Proto file |
+|---- |----------------------------------- |------------------------------------------------------------------- |
+| 9000 | [Details](WalletGetAccessToken.md) | [WalletGetAccessToken](../../../../app/assets/proto/WalletGetAccessToken.proto) |
+| 39000 | [Details](WalletGetAccessTokenResponse.md) | [WalletGetAccessTokenResponse](../../../../app/assets/proto/WalletGetAccessToken.proto) |
+| 9001 | [Details](WalletWalletPaymentInit.md) | [WalletWalletPaymentInit](../../../../app/assets/proto/WalletWalletPaymentInit.proto) |
+| 39001 | [Details](WalletWalletPaymentInitResponse.md) | [WalletWalletPaymentInitResponse](../../../../app/assets/proto/WalletWalletPaymentInit.proto) |
+| 9002 | [Details](WalletRegister.md) | [WalletRegister](../../../../app/assets/proto/WalletRegister.proto) |
+| 39002 | [Details](WalletRegisterResponse.md) | [WalletRegisterResponse](../../../../app/assets/proto/WalletRegister.proto) |
+| 9003 | [Details](WalletIdMapping.md) | [WalletIdMapping](../../../../app/assets/proto/WalletIdMapping.proto) |
+| 39003 | [Details](WalletIdMappingResponse.md) | [WalletIdMappingResponse](../../../../app/assets/proto/WalletIdMapping.proto) |
+
+# Mpl 91xx
+
+| Id |Details | Proto file |
+|---- |----------------------------------- |------------------------------------------------------------------- |
+| 9100 | [Details](MplGetBillToken.md) | [MplGetBillToken](../../../../app/assets/proto/MplGetBillToken.proto) |
+| 39100 | [Details](MplGetBillTokenResponse.md) | [MplGetBillTokenResponse](../../../../app/assets/proto/MplGetBillToken.proto) |
+| 9101 | [Details](MplGetTopupToken.md) | [MplGetTopupToken](../../../../app/assets/proto/MplGetTopupToken.proto) |
+| 39101 | [Details](MplGetTopupTokenResponse.md) | [MplGetTopupTokenResponse](../../../../app/assets/proto/MplGetTopupToken.proto) |
+
+
+
+# BillInquiry 92xx
+
+| Id |Details | Proto file |
+|---- |----------------------------------- |------------------------------------------------------------------- |
+| 9200 | [Details](BillInquiryMci.md) | [BillInquiryMci](../../../../app/assets/proto/BillInquiryMci.proto) |
+| 39200 | [Details](BillInquiryMciResponse.md) | [BillInquiryMciResponse](../../../../app/assets/proto/BillInquiryMci.proto) |
+| 9201 | [Details](BillInquiryTelecom.md) | [BillInquiryTelecom](../../../../app/assets/proto/BillInquiryTelecom.proto) |
+| 39201 | [Details](BillInquiryTelecomResponse.md) | [BillInquiryTelecomResponse](../../../../app/assets/proto/BillInquiryTelecom.proto) |
+
# Push 600xx
| Id |Details | Proto file |
@@ -398,3 +439,4 @@
| 60001 | [Details](PushTwoStepVerificationResponse.md) | [PushTwoStepVerificationResponse](../../../../app/assets/proto/PushTwoStepVerification.proto) |
| 60002 | [Details](PushUserInfoExpiredResponse.md) | [PushUserInfoExpiredResponse](../../../../app/assets/proto/PushUserInfoExpired.proto) |
| 60003 | [Details](PushRateSignalingResponse.md) | [PushRateSignalingResponse](../../../../app/assets/proto/PushRateSignaling.proto) |
+| 60004 | [Details](PushWalletPaymentVerifiedResponse.md) | [PushWalletPaymentVerifiedResponse](../../../../app/assets/proto/PushWalletPaymentVerified.proto) |
diff --git a/docs/guide/v1/push/README.md b/docs/guide/v1/push/README.md
index 2208c6a..6990d80 100644
--- a/docs/guide/v1/push/README.md
+++ b/docs/guide/v1/push/README.md
@@ -7,4 +7,8 @@
---
-* [RateSignaling](RateSignaling.md)
\ No newline at end of file
+* [RateSignaling](RateSignaling.md)
+
+---
+
+* [WalletPaymentVerified](WalletPaymentVerified.md)
\ No newline at end of file
diff --git a/docs/guide/v1/push/WalletPaymentVerified.md b/docs/guide/v1/push/WalletPaymentVerified.md
new file mode 100644
index 0000000..68106ed
--- /dev/null
+++ b/docs/guide/v1/push/WalletPaymentVerified.md
@@ -0,0 +1,5 @@
+The payment is verified
+
+# Response
+message [#60004](../proto/README.md#action_60004)
+
diff --git a/docs/guide/v1/request/README.md b/docs/guide/v1/request/README.md
index 23af7f7..4f6fb33 100644
--- a/docs/guide/v1/request/README.md
+++ b/docs/guide/v1/request/README.md
@@ -24,7 +24,7 @@
* :o: [UpdateUsername](user/profile/UpdateUsername.md)
* :o: [SetBio](user/profile/SetBio.md)
* [GetBio](user/profile/GetBio.md)
- * [Report](user/Report.md)
+* [Report](user/Report.md)
* Contacts
* [Import](user/contacts/Import.md)
* :o: [GetList](user/contacts/GetList.md)
@@ -97,6 +97,7 @@
* :o: [UpdateUsername](group/UpdateUsername.md)
* :o: [RemoveUsername](group/RemoveUsername.md)
* :o: [RevokeLink](group/RevokeLink.md)
+* :o: [PinMessage](group/PinMessage.md)
* Avatar
* :o: [Add](group/avatar/Add.md)
* :o: [Delete](group/avatar/Delete.md)
@@ -124,8 +125,10 @@
* :o: [RemoveUsername](channel/RemoveUsername.md)
* :o: [RevokeLink](channel/RevokeLink.md)
* :o: [UpdateSignature](channel/UpdateSignature.md)
+* :o: [UpdateReactionStatus](channel/UpdateReactionStatus.md)
* [GetMessagesStats](channel/GetMessagesStats.md)
* [AddMessageReaction](channel/AddMessageReaction.md)
+* :o: [PinMessage](channel/PinMessage.md)
* Avatar
* :o: [Add](channel/avatar/Add.md)
* :o: [Delete](channel/avatar/Delete.md)
@@ -156,6 +159,7 @@
* :o: [MuteRoom](client/MuteRoom.md)
* :o: [PinRoom](client/PinRoom.md)
* [RoomReport](client/RoomReport.md)
+* [RegisterDevice](client/RegisterDevice.md)
# File
* [Upload](file/Upload.md)
@@ -192,4 +196,19 @@
* [GetComment](geo/GetComment.md)
* :o: [UpdateComment](geo/UpdateComment.md)
* [GetNearbyDistance](geo/GetNearbyDistance.md)
-* [GetNearbyCoordinate](geo/GetNearbyCoordinate.md)
\ No newline at end of file
+* [GetNearbyCoordinate](geo/GetNearbyCoordinate.md)
+
+# Wallet
+* [GetAccessToken](wallet/GetAccessToken.md)
+* [Register](wallet/Register.md)
+* [IdMapping](wallet/IdMapping.md)
+* Payment
+ * [Init](wallet/payment/Init.md)
+
+# Mpl
+* [GetBillToken](mpl/GetBillToken.md)
+* [GetTopupToken](mpl/GetTopupToken.md)
+
+# BillInquiry
+* [Mci](bill-inquiry/Mci.md)
+* [Telecom](bill-inquiry/Telecom.md)
diff --git a/docs/guide/v1/request/bill-inquiry/Mci.md b/docs/guide/v1/request/bill-inquiry/Mci.md
new file mode 100644
index 0000000..886f0f3
--- /dev/null
+++ b/docs/guide/v1/request/bill-inquiry/Mci.md
@@ -0,0 +1,8 @@
+Inquiry MCI bill
+
+# Request
+message [#9200](../../proto/README.md#action_9200)
+
+# Response
+message [#39200](../../proto/README.md#action_39200)
+
diff --git a/docs/guide/v1/request/bill-inquiry/Telecom.md b/docs/guide/v1/request/bill-inquiry/Telecom.md
new file mode 100644
index 0000000..a00966d
--- /dev/null
+++ b/docs/guide/v1/request/bill-inquiry/Telecom.md
@@ -0,0 +1,8 @@
+Inquiry telecom bill
+
+# Request
+message [#9201](../../proto/README.md#action_9201)
+
+# Response
+message [#39201](../../proto/README.md#action_39201)
+
diff --git a/docs/guide/v1/request/channel/PinMessage.md b/docs/guide/v1/request/channel/PinMessage.md
new file mode 100644
index 0000000..00e616e
--- /dev/null
+++ b/docs/guide/v1/request/channel/PinMessage.md
@@ -0,0 +1,12 @@
+Pin a channel room message
+
+# Request
+message [#427](../../proto/README.md#action_427)
+
+# Response
+message [#30427](../../proto/README.md#action_30427)
+
+# List of access rule
+* OWNER
+* ADMIN
+* MODERATOR
\ No newline at end of file
diff --git a/docs/guide/v1/request/channel/UpdateReactionStatus.md b/docs/guide/v1/request/channel/UpdateReactionStatus.md
new file mode 100644
index 0000000..e0ca19d
--- /dev/null
+++ b/docs/guide/v1/request/channel/UpdateReactionStatus.md
@@ -0,0 +1,11 @@
+Update reaction status of a channel room
+
+# Request
+message [#426](../../proto/README.md#action_426)
+
+# Response
+message [#30426](../../proto/README.md#action_30426)
+
+
+# List of access rule
+* OWNER
\ No newline at end of file
diff --git a/docs/guide/v1/request/client/RegisterDevice.md b/docs/guide/v1/request/client/RegisterDevice.md
new file mode 100644
index 0000000..b9d637a
--- /dev/null
+++ b/docs/guide/v1/request/client/RegisterDevice.md
@@ -0,0 +1,8 @@
+Register push notification token. It is useful to repeat this query at least once every 24 hours or when restarting the application.
+
+# Request
+message [#617](../../proto/README.md#action_617)
+
+# Response
+message [#30617](../../proto/README.md#action_30617)
+
diff --git a/docs/guide/v1/request/group/PinMessage.md b/docs/guide/v1/request/group/PinMessage.md
new file mode 100644
index 0000000..7fa4448
--- /dev/null
+++ b/docs/guide/v1/request/group/PinMessage.md
@@ -0,0 +1,12 @@
+Pin a group room message
+
+# Request
+message [#326](../../proto/README.md#action_326)
+
+# Response
+message [#30326](../../proto/README.md#action_30326)
+
+# List of access rule
+* OWNER
+* ADMIN
+* MODERATOR
\ No newline at end of file
diff --git a/docs/guide/v1/request/info/Page.md b/docs/guide/v1/request/info/Page.md
index 44bf6a6..09a8343 100644
--- a/docs/guide/v1/request/info/Page.md
+++ b/docs/guide/v1/request/info/Page.md
@@ -7,6 +7,7 @@ message [#503](../../proto/README.md#action_503)
message [#30503](../../proto/README.md#action_30503)
# Available pages
-| ID | Description |
-|----- |------------------ |
-| TOS | Terms of service |
\ No newline at end of file
+| ID | Description |
+|----- |------------------ |
+| TOS | Terms of service |
+| WALLET_AGREEMENT | Wallet service agreement |
\ No newline at end of file
diff --git a/docs/guide/v1/request/mpl/GetBillToken.md b/docs/guide/v1/request/mpl/GetBillToken.md
new file mode 100644
index 0000000..e3e272c
--- /dev/null
+++ b/docs/guide/v1/request/mpl/GetBillToken.md
@@ -0,0 +1,8 @@
+Get a new mpl bill token
+
+# Request
+message [#9100](../../proto/README.md#action_9100)
+
+# Response
+message [#39100](../../proto/README.md#action_39100)
+
diff --git a/docs/guide/v1/request/mpl/GetTopupToken.md b/docs/guide/v1/request/mpl/GetTopupToken.md
new file mode 100644
index 0000000..a6a775b
--- /dev/null
+++ b/docs/guide/v1/request/mpl/GetTopupToken.md
@@ -0,0 +1,8 @@
+Get a new mpl topup token
+
+# Request
+message [#9101](../../proto/README.md#action_9101)
+
+# Response
+message [#39101](../../proto/README.md#action_39101)
+
diff --git a/docs/guide/v1/request/wallet/GetAccessToken.md b/docs/guide/v1/request/wallet/GetAccessToken.md
new file mode 100644
index 0000000..13b5d89
--- /dev/null
+++ b/docs/guide/v1/request/wallet/GetAccessToken.md
@@ -0,0 +1,8 @@
+Get Wallet access token
+
+# Request
+message [#9000](../../proto/README.md#action_9000)
+
+# Response
+message [#39000](../../proto/README.md#action_39000)
+
diff --git a/docs/guide/v1/request/wallet/IdMapping.md b/docs/guide/v1/request/wallet/IdMapping.md
new file mode 100644
index 0000000..c27dfce
--- /dev/null
+++ b/docs/guide/v1/request/wallet/IdMapping.md
@@ -0,0 +1,8 @@
+Map wallet id to user id
+
+# Request
+message [#9003](../../proto/README.md#action_9003)
+
+# Response
+message [#39003](../../proto/README.md#action_39003)
+
diff --git a/docs/guide/v1/request/wallet/Register.md b/docs/guide/v1/request/wallet/Register.md
new file mode 100644
index 0000000..dc38039
--- /dev/null
+++ b/docs/guide/v1/request/wallet/Register.md
@@ -0,0 +1,8 @@
+Register in Wallet
+
+# Request
+message [#9002](../../proto/README.md#action_9002)
+
+# Response
+message [#39002](../../proto/README.md#action_39002)
+
diff --git a/docs/guide/v1/request/wallet/payment/Init.md b/docs/guide/v1/request/wallet/payment/Init.md
new file mode 100644
index 0000000..34ab3d8
--- /dev/null
+++ b/docs/guide/v1/request/wallet/payment/Init.md
@@ -0,0 +1,8 @@
+Init a new payment
+
+# Request
+message [#9001](../../../proto/README.md#action_9001)
+
+# Response
+message [#39001](../../../proto/README.md#action_39001)
+