WebSocket Request and Response

Request: RequestPing

{"clientVersion": "7.14", "when": 1732795223926}

Description of Fields:

  • clientVersion: (string) The version of the client sending the request.
  • when: (number) The time (in milliseconds since Unix epoch) when the request was sent.

Response: ResponsePong

{"serverVersion": "7.14", "androidUrl": "https://messenger.jetico.com/android/messenger_0.00.619b_v.4-ent..."}

Description of Fields:

  • serverVersion: (string) The version of the server responding to the request.
  • androidUrl: (string) URL for downloading the Android application.se

Request: RequestRegisterApplication

{"androidSmsToken": "p1VSyoHQY8a", "applicationType": "android", "model": "SM-A336B", "openUserId": "+35794048714", "osVersion": "SDK 34", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "db2553bb-3308-4a53-8c32-30dc3b55dece", "vendor": "samsung"}

Description of Fields:

  • androidSmsToken: (string) SMS token for registering the application on Android.
  • applicationType: (string) Type of the application (e.g., "android").
  • model: (string) Device model running the application.
  • openUserId: (string) Phone number associated with the user.
  • osVersion: (string) Operating system version (e.g., "SDK 34").
  • userId: (string) User identifier, if available.
  • uuid: (string) Unique identifier for the device or application.
  • vendor: (string) Device manufacturer (e.g., "samsung").

Response: ResponseStatusMessage

{"requestType": "RequestRegisterApplication", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestConfirmRegistration

{"smsCode": "121", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "db2553bb-3308-4a53-8c32-30dc3b55dece"}

Description of Fields:

  • smsCode: (string) Code received by the user via SMS for confirming registration.
  • userId: (string) User identifier confirming the registration.
  • uuid: (string) Unique identifier for the device or application.

Response: ResponseStatusMessage

{"requestType": "RequestConfirmRegistration", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestAuthenticationByApplication

{"userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "db2553bb-3308-4a53-8c32-30dc3b55dece"}

Description of Fields:

  • userId: (string) User identifier being authenticated.
  • uuid: (string) Unique identifier for the device or application.

Response: ResponseStatusMessage

{"requestType": "RequestAuthenticationByApplication", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestUpdateDeviceTokenByApplication

{"token": "cLwzm2RNQT6nAtNax9tPb3:APA91bHs980Cv04GyWR6ZHClhkIfoFalQCYTMs6iy...", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "db2553bb-3308-4a53-8c32-30dc3b55dece"}

Description of Fields:

  • token: (string) Device token for updating (e.g., FCM token).
  • userId: (string) User identifier for which the token is updated.
  • uuid: (string) Unique identifier for the device or application.

Response: ResponseStatusMessage

{"requestType": "RequestUpdateDeviceTokenByApplication", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: GetParams

{"userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="}

Description of Fields:

  • userId: (string) User identifier for which parameters are requested.

Response: Params

{"params": [{"userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "name": "params", "value": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0Ijoiek9yMXpabFA0MGdoVG5GWGVhTFArZ2dK..."}]}

Description of Fields:

  • params: (array) Array of objects containing user parameters.
    • userId: (string) User identifier.
    • name: (string) Name of the parameter.
    • value: (string) Value of the parameter (may be a base64 encoded JSON object).

Request: RequestGetContactList

{"userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="}

Description of Fields:

  • userId: (string) User identifier for which the contact list is requested.

Response: ResponseContactList

{"users": [{"contactId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiZGw1QjljcDVtb2RBVWdFMiIsIml2QmFz...", "nickEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiekxLWWthVnFvU0hpeUE9PSIsIml2QmFz...", "trustedFingerprintEncrypted": null}, {"contactId": "FgP/up+bltJwsx2lVhqmXjC2h1nK/761PRrhTqgEncM=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0Ijoiam1DNk5wWWNsWmNZY0o3TCIsIml2QmFz...", "nickEncrypted": null, "trustedFingerprintEncrypted": null}, {"contactId": "gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiY1F1Q2ZaeW1vNGc1bnBKZ2p6N1pqeEh1K0k4...", "nickEncrypted": null, "trustedFingerprintEncrypted": null}, {"contactId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiRDI1d2E5b1ZMTFEyU2dWKyIsIml2QmFz...", "nickEncrypted": null, "trustedFingerprintEncrypted": null}]}

Description of Fields:

  • users: (array) Array of user contact objects.
    • contactId: (string) Identifier of the contact.
    • contactIdEncrypted: (string) Encrypted identifier of the contact.
    • nickEncrypted: (string|null) Encrypted nickname of the contact (may be null).
    • trustedFingerprintEncrypted: (string|null) Encrypted trusted fingerprint of the contact (may be null).

Request: RequestGetRegisteredUsers

{"checkUserList": ["1aez3p7q6mB9gekta1qzrZ5lkLZ551kY+n5x7eILUO8=", "TVfijtEslORzp0M+jw4PRwubt7T/tYnz+ydPoUKLDSQ=", "we+Z5bF3KlEyQsUGpRbazkzWGje/NcvXTxRcR5b15VA=", "iBQ3sF5AlZi9TTd1H/UfquNhB8PD2kTcyU3JDhIM8Oc=", "fcRThhIKK0PJ/U9xRu+CcqLHTF3QdxT0laGjL0VJX4U=", "FtYILxvBFGvGHosbknDVzvJbZrqCbZ0J5uM3CEBAuqE=", "nq0zWEOwUifNIe9RQgqj9u5qpGsDFe9Z4VOJK5HBL9Y=", "5JCp6hD2YYSGSPj3zyrvHCft3MY736dmMXE75M6mabw=", "02mVBwJzf9+LyucjHqCh8ZKnzO/YfgrlhBm14qXEhmE=", "UqcOttVLRvdg20u2KbJGviEE4gcrOfzw8ObH98PHNvI=", "koFDSkcZaVvNOTq7yJGybQHidybigdTEOV1Ir8LuruY=", "G4gGsBUNOkDzpCVApk7Nv3L9Jv69Xf8QXY8rzSDiOfs=", "2ZEv8pNpWZ+zWio8gKtr5bpk0KySJwNjI0WwmNZIyt8=", "H28nimmG2zjD/vXFs5a98yDROsCQC3xt6/YFxucWrUE=", "gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM=", "FJSAyYhFRtH0OaWWynQKi2vMT8GC/+h0UhGUtk31iCM=", "TMhcdiz+wWdDFejUkCrG+Th0IgoLMEY+yrzQxA/v+Ys=", "Pv2pv8got5i+O0qdvXDI5pSmn4HnynLl2bBQnh8x5HM=", "kC+01+QJkRDTh/qvndHvn1wMhkASzwgDRnUYYQ8aOJg=", "tFkpyMiTl1DjQeJsz8rEHZTBpBLuyM8CRZAx6rtTDy8=", "L+iwLxab9gKklJMktMlKPdhMVJwJKAFr1AoeQ8DFU+s=", "BUVqAmj4u6YtdvJ70mZrMFnDRiBkZzL513WahBBM4zo=", "lHULyXTU8aKNr9FSfJjeKG8rdTZ8a4xk4jpQRAT2fL8=", "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "b8ExyUGtlEpABAXPHnCiNO/VPC6fEkDIYtu6u+PbBus=", "1fuHDAAfm2ULOoN+Dv/DCe3SghuALaMwkcwvgIiwx7g=", "14jxZFG68AqfxGkWNcJrgvF9Tr0ZlJHIEnX3up8eRyM=", "6m76nVOeK46hNbZ1R39tNm0QYWo6+B3Dt0H5OFWBi2g=", "hOLMyd9C8B4/YsptZkvwJA20c+wub50J5VdXZlHsi7c=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "F/mfOXIDgQSVB26jVKTvmXcgziFy4Xo28r5ynOd31Ag=", "yyfrLmLb1BlZuC6QOWC/7j41aJAq9+MVcmL0dpfvr74=", "JFUpe48QUb2IUUuQtkzLFF84o5+5dLLDB9Zb9gYKJ/E=", "T3CZrQzw0RWAUtIrutJlyRHUYjfC6d1JVFrSoIZ+CjU=", "Ur11zoC0DdvidlHk3HJmZZ7hlL7NnT/ALAx8TM18vL8=", "oQgiIm3BqaOyRYioV0HM/3r2U5D8eopjFsvWU+lvw4Y=", "Z1BTlsKWZLqM6LCH0dCCSaTQRxHGqHVqRRO8371/Fz4=", "JLJ2MKbHKHt/GlL28P5ahZMCgCnoNadaSXAVwhSHbn8=", "M6mEKo7bwpAjXU73z1pgWsKWm+hI5Gqw8KBgFc3wH9s=", "FGl570QZYI9mUJ0Vn3xiR4XQaNwezCUVIF92yWOhloA=", "c+esxGvOPLClFU3dJJcJVkL9aCEy6OfiPh7RI2nJVpA=", "f9vrQ7Uuvix9wd7Ee73RhD+lUjaouyNf1vNxIA3apGo=", "A93Ojb1ZKL5S7EHc+CB1QFlfj7Pz0CE8Le3wMmPzNvc=", "FgP/up+bltJwsx2lVhqmXjC2h1nK/761PRrhTqgEncM=", "gI6BtKtCWTVOgbLoKV8X/zhp05uTCYQVHYbV3pZkEhY=", "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "FgP/up+bltJwsx2lVhqmXjC2h1nK/761PRrhTqgEncM="]}

Description of Fields:

  • checkUserList: (array) List of user identifiers to check for registration.

Response: ResponseRegisteredUsers

{"users": ["gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM=", "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "FgP/up+bltJwsx2lVhqmXjC2h1nK/761PRrhTqgEncM="]}

Description of Fields:

  • users: (array) Array of user identifiers that are registered.

Request: UpdateParam

{"name": "params", "value": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiNko5YmxNd1NYL0pwbWprWWhtdmxmKzAz..."}

Description of Fields:

  • name: (string) Name of the parameter to update.
  • value: (string) Value of the parameter to update (may be a base64 encoded string).

Response: ResponseStatusMessage

{"requestType": "UpdateParam", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestGetUpdatedPublicKeys

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation for which public keys are requested.

Response: ResponseGetUpdatedPublicKeys

{ "publicKeys": {} }

Description of Fields:

  • publicKeys: (object) Public keys associated with the conversation (empty if none).

Request: RequestGetMessages

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "fromMessageUuid": "eececa28-bd98-450e-8383-cd2b4da39659", "size": 10 }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation to get messages from.
  • fromMessageUuid: (string) UUID of the message from which to start retrieving.
  • size: (number) Number of messages to retrieve.

Response: ResponseGetMessages

{ "messages": [ { "uuid": "eaa5835e-30ff-498f-9a95-eb8a8ae93564", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "b6FKE/t/H1p9bgLiVg4y/w==", "bodyEncryptedBase64": "Pu9sMJY=", "created": 1732795319618, "hasFiles": true, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false, "replyMessageUuid": null }, { "uuid": "ddc9ec23-62e9-4a2c-806c-8485ceb644ce", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "Zlmuy+Zre8+fnxpvmrFfqw==", "bodyEncryptedBase64": "V+Srn1w=", "created": 1732795249834, "hasFiles": false, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false, "replyMessageUuid": null } ] }

Description of Fields:

  • messages: (array) List of message objects.
    • bodyEncryptedBase64: (string|null) The encrypted body of the message in base64 (may be null).
    • conversationUuid: (string) UUID of the conversation to which the message belongs.
    • created: (number) Timestamp of when the message was created.
    • deleted: (boolean) Indicates if the message has been deleted.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • eventType: (string|null) Type of the event if the message is an event (may be null).
    • eventUserId: (string|null) ID of the user associated with the event (may be null).
    • hasFiles: (boolean) Indicates if the message has files attached.
    • isEvent: (boolean) Indicates if the message is an event.
    • ivBase64: (string|null) Initialization vector in base64 for decrypting the message (may be null).
    • members: (number) Count of members in the conversation.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • readed: (boolean) Indicates if the message has been read.
    • readedMembers: (number) Count of members who have read the message.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • userNick: (string) Nickname of the user who sent the message.
    • uuid: (string) Unique identifier of the message.

Request: RequestGetMessagesFromUuid

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "size": 10, "uuid": "eececa28-bd98-450e-8383-cd2b4da39659" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation to get messages from.
  • size: (number) Number of messages to retrieve.
  • uuid: (string) UUID of the message from which to start retrieving.

Response: ResponseGetMessages

{ "messages": [{ "uuid": "F0DD7FEE-B581-4C9B-BDC2-0D721A9C9ADA", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "h6u9RuJAPLAtK89TK0Fh0Q==", "bodyEncryptedBase64": "ySpCINlp", "created": 1732091375378, "hasFiles": true, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 2, "deliveredMembers": 2, "objectionable": false, "deleted": false, "replyMessageUuid": null }, { "uuid": "708627DE-644F-46C3-AC5C-1E6D4B673785", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "1rLhd1OrdXFl9+Jd0UU/rQ==", "bodyEncryptedBase64": "X3vMx6E=", "created": 1732091360201, "hasFiles": false, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 2, "deliveredMembers": 2, "objectionable": false, "deleted": false, "replyMessageUuid": null }, { "uuid": "4F7D80A4-721A-4F5B-9E5E-DB868EC0CC03", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "1E+0+wtQmml4FrufKz5OLg==", "bodyEncryptedBase64": "yxDihg==", "created": 1732091346776, "hasFiles": false, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 2, "deliveredMembers": 2, "objectionable": false, "deleted": false, "replyMessageUuid": null }, { "uuid": "C777754B-2C7E-4FCC-921A-E86BB1F20B4D", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "xRkMMr79By6a2tvKvyIATA==", "bodyEncryptedBase64": "l3de8g==", "created": 1732091294597, "hasFiles": false, "readed": true, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwKICAiaXZCYXNlNjQiIDogInNRSUIxbjY0STJQcE9oZzBQd2Fsdmc9PSIsCiAgImNvbnZlcnNhdGlvblV1aWQiIDogIjJBMjJCOUZCLTNGNzktNDgzOS1BM0Q2LUIyNUIyMzRFNzZGMSIsCiAgInNlc3Npb25LZXlVdWlkIiA6ICJBOUM5Qzc4OS04N0Q5LTQ3NTAtODY4NS1GQ0FBQTM3QzhFMDQiCn0=", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 2, "deliveredMembers": 2, "objectionable": false, "deleted": false, "replyMessageUuid": null }] }

Description of Fields:

  • messages: (array) List of message objects.
    • bodyEncryptedBase64: (string|null) The encrypted body of the message in base64 (may be null).
    • conversationUuid: (string) UUID of the conversation to which the message belongs.
    • created: (number) Timestamp of when the message was created.
    • deleted: (boolean) Indicates if the message has been deleted.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • eventType: (string|null) Type of the event if the message is an event (may be null).
    • eventUserId: (string|null) ID of the user associated with the event (may be null).
    • hasFiles: (boolean) Indicates if the message has files attached.
    • isEvent: (boolean) Indicates if the message is an event.
    • ivBase64: (string|null) Initialization vector in base64 for decrypting the message (may be null).
    • members: (number) Count of members in the conversation.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • readed: (boolean) Indicates if the message has been read.
    • readedMembers: (number) Count of members who have read the message.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • userNick: (string) Nickname of the user who sent the message.
    • uuid: (string) Unique identifier of the message.

Request: UpdateContact

{ "contact": { "contactId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiMXY5M0lhVXVkRWZCK2xKQSIsIml2QmFz...", "nickEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiZTVhbHF3PT0iLCJpdkJhc2U2NCI6InB1...", "trustedFingerprintEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoibGxGT3ZXTnBZeE1DczJRdDhXbnJldUY0..." }, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • contact: (object) Contact information to be updated.
  • userId: (string) User identifier making the update.

Response: ResponseStatusMessage

{ "requestType": "UpdateContact", "status": "ok", "description": null }

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestTyping

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation indicating typing status.

Response: ResponseStatusMessage

{ "requestType": "RequestTyping", "status": "ok", "description": null }

Description of Fields:

  • requestType: (string) Type of the request that the response corresponds to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null if there is no additional information).

Request: RequestAddMessage

{ "bodyEncryptedBase64": "V+Srn1w=", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "hasFiles": false, "ivBase64": "Zlmuy+Zre8+fnxpvmrFfqw==", "messageUuid": "ddc9ec23-62e9-4a2c-806c-8485ceb644ce", "replyMessageUuid": null, "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04" }

Description of Fields:

  • bodyEncryptedBase64: (string) The message content encrypted in base64.
  • conversationUuid: (string) UUID of the conversation to which the message belongs.
  • hasFiles: (boolean) Indicates if the message has files attached.
  • ivBase64: (string) Initialization vector for decryption.
  • messageUuid: (string) UUID of the message being added.
  • replyMessageUuid: (string|null) UUID of the message being replied to (if any).
  • sessionKeyUuid: (string) UUID of the session key used for encryption.

Response: ResponseAddedMessage

{ "message": { "uuid": "ddc9ec23-62e9-4a2c-806c-8485ceb644ce", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "sessionKeyUuid": "A9C9C789-87D9-4750-8685-FCAAA37C8E04", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "Zlmuy+Zre8+fnxpvmrFfqw==", "bodyEncryptedBase64": "V+Srn1w=", "created": 1732795249834, "hasFiles": false, "readed": false, "userNick": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwK...", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false, "replyMessageUuid": null } }

Description of Fields:

  • message: (object) Details of the message that was added.
    • bodyEncryptedBase64: (string|null) The encrypted body of the message in base64 (may be null).
    • conversationUuid: (string) UUID of the conversation to which the message belongs.
    • created: (number) Timestamp of when the message was created.
    • deleted: (boolean) Indicates if the message has been deleted.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • eventType: (string|null) Type of the event if the message is an event (may be null).
    • eventUserId: (string|null) ID of the user associated with the event (may be null).
    • hasFiles: (boolean) Indicates if the message has files attached.
    • isEvent: (boolean) Indicates if the message is an event.
    • ivBase64: (string|null) Initialization vector in base64 for decrypting the message (may be null).
    • members: (number) Count of members in the conversation.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • readed: (boolean) Indicates if the message has been read.
    • readedMembers: (number) Count of members who have read the message.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • userNick: (string) Nickname of the user who sent the message.
    • uuid: (string) Unique identifier of the message.

Request: RequestGetFiles

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "messageUuid": "F0DD7FEE-B581-4C9B-BDC2-0D721A9C9ADA" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation to get files from.
  • messageUuid: (string) UUID of the message associated with the files.

Response: ResponseFiles

{ "files": [ { "fileNameEncrypted": "swsdfoND1/pHOzG3OFdjeJqoU3iAjcSl8O4/LXy+VOEgB4sv57RfULw=", "downloadUrl": "http://192.168.2.25:80/download/conversation_2A22B9FB-3F79-4839-A3D6-B25B234E76F1/F0DD7FEE-B581-4C9B-BDC2-0D721A9C9ADA_swsdfoND1_pHOzG3OFdjeJqoU3iAjcSl8O4_LXy+VOEgB4sv57RfULw=", "width": 632, "height": 1368, "duration": null, "size": 380038, "previewFileNameEncrypted": "swsdfoND1/pHOzG3OFdjeJqoU3iAjcSl8O4/LXy+VOEgB4svlq5dUK0twHGnLTIuoA==", "mimeType": "image/jpeg" }, { "fileNameEncrypted": "swsdfoND1/pHOzG3OFdjeJqoU3iAjcSl8O4/LXy+VOEgB4svlq5dUK0twHGnLTIuoA==", "downloadUrl": "http://192.168.2.25:80/download/conversation_2A22B9FB-3F79-4839-A3D6-B25B234E76F1/F0DD7FEE-B581-4C9B-BDC2-0D721A9C9ADA_swsdfoND1_pHOzG3OFdjeJqoU3iAjcSl8O4_LXy+VOEgB4svlq5dUK0twHGnLTIuoA==", "width": 333, "height": 720, "duration": null, "size": 157244, "previewFileNameEncrypted": null, "mimeType": "image/jpeg" } ] }

Description of Fields:

    • fileNameEncrypted (string): encrypted file name.  
    • • downloadUrl (string): URL for downloading the file.  
    • • width (integer): file width. A value of -1 means the width is unknown.  
    • • height (integer): file height. A value of -1 means the height is unknown.  
    • • duration (integer): file duration in seconds.  
    • • size (integer): file size in bytes.  
    • • previewFileNameEncrypted (string|null): encrypted file name of the preview or null if the preview is missing.  
    • • mimeType (string): MIME type of the file. 

Request: RequestGetFilesFast

{ "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "messageUuid": "eaa5835e-30ff-498f-9a95-eb8a8ae93564" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation to get files from.
  • messageUuid: (string) UUID of the message associated with the files.

Response: ResponseFiles

{ "files": [{ "fileNameEncrypted": "SLsoFZZKZLfQ07GTtSKKN18c19cZTN1gDE0wpyJslFylLiA=", "downloadUrl": "http://192.168.2.25:80/download/conversation_2A22B9FB-3F79-...", "width": -1, "height": -1, "duration": 245, "size": 3912642, "previewFileNameEncrypted": null, "mimeType": "audio/mpeg" }] }

Description of Fields:

    • fileNameEncrypted (string): encrypted file name.  
    • downloadUrl (string): URL for downloading the file.  
    • width (integer): file width. A value of -1 means the width is unknown.  
    • height (integer): file height. A value of -1 means the height is unknown.  
    • duration (integer): file duration in seconds.  
    • size (integer): file size in bytes.  
    • previewFileNameEncrypted (string|null): encrypted file name of the preview or null if the preview is missing.  
    • mimeType (string): MIME type of the file. 

Request: RequestCreateConversationFull

{ "admins": { "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=": "J2DtOHLGs6d54WWnZKRBQf8abj7z3Y7WhFVx2SvVwGLaLkgh45mliRmavCVw/m+6..." }, "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "isDialog": true, "members": {}, "nickEncrypted": "eyJjb252ZXJzYXRpb25VdWlkIjoiNjkyMWQyZmQtZTg4Yy00ODAyLWJiNzAtZDdh...", "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "sessionKeyValue": { "keyEncryptedBase64": "orIZgsCxgDVbSEpku6pAEDLH7ANLCEU2Qcqm3pm5THvcO7E4z9Om4hxAjweU2Cj+...", "signatureBase64": "f2LCOEVLhbYrUc77mZt2SgnvvUlsBG97JdGFu6pr3J143cc2PuWJAPiA//CZZz3j...", "signerKeyPairUuid": "e925acd1-af66-4ac6-b700-0f0e0724f04e", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }, "title": null }

Description of Fields:

  • admins: (object) List of admin users for the conversation.
  • conversationUuid: (string) UUID of the conversation being created.
  • isDialog: (boolean) Indicates if this is a dialog conversation.
  • members: (object) List of members in the conversation.
  • nickEncrypted: (string) Encrypted nickname for the conversation.
  • sessionKeyUuid: (string) UUID of the session key.
  • sessionKeyValue: (object) Key value for the session.
  • title: (string|null) Title of the conversation (if any).

Response: ResponseCreateConversation

{ "conversation": { "uuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "isDialog": true, "title": null, "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "created": 1732795356441, "lastMessage": 1732795359460, "unreadedCounter": 0, "admins": [ "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" ], "members": [], "hasAvatar": false, "avatarUpdated": 1732795356441, "joinedUserId": null, "blocked": false } }

Description of Fields:

  • conversation: (object) Details of the conversation that was created.
    • uuid: (string) Unique identifier of the conversation.
    • isDialog: (boolean) Indicates if the conversation is a dialog.
    • title: (string|null) Title of the conversation (can be null).
    • sessionKeyUuid: (string) UUID of the session key.
    • created: (number) Timestamp when the conversation was created.
    • lastMessage: (number) Timestamp of the last message sent.
    • unreadedCounter: (number) Count of unread messages.
    • admins: (array) List of admin user IDs.
    • members: (array) List of member user IDs.
    • hasAvatar: (boolean) Indicates if the conversation has an avatar.
    • avatarUpdated: (number) Timestamp when the avatar was last updated.
    • joinedUserId: (string|null) User ID of the joined user (can be null).
    • blocked: (boolean) Indicates if the conversation is blocked.

Request: RequestGetConversationFull

{"conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "userId": null}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation.
  • userId: (string|null) The identifier of the user (can be null).

Response: ResponseGetConversationFull

{ "conversation": { "uuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "isDialog": true, "title": null, "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "created": 1732795356441, "lastMessage": 1732795359507, "unreadedCounter": 0, "admins": [ "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" ], "members": [], "hasAvatar": false, "avatarUpdated": 1732795356441, "joinedUserId": null, "blocked": false }, "lastMessage": { "uuid": "88207239-224b-4e12-a8fa-5132a3070756", "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": null, "bodyEncryptedBase64": null, "created": 1732795359507, "hasFiles": false, "readed": true, "userNick": "eyJjb252ZXJzYXRpb25VdWlkIjoiNjkyMWQyZmQtZTg4Yy00ODAyLWJiNzAtZDdhMTg3NzA5MzllIiwiZW5jcnlwdGVkQm9keUJhc2U2NCI6IjZ0OHZ0bmdMY1lNZVNBPT0iLCJpdkJhc2U2NCI6IklzWlZqU2ZnMTJJVVRDK0JhcitKTHc9PSIsInNlc3Npb25LZXlVdWlkIjoiYjgzMjJmNWMtOTJlNy00ODEwLTkwZGEtOGIxNjcyMjNlNDk2In0=", "isEvent": true, "eventType": "Added", "eventUserId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false, "replyMessageUuid": null }, "sessionKey": { "uuid": "b8322f5c-92e7-4810-90da-8b167223e496", "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "keyEncryptedBase64": "orIZgsCxgDVbSEpku6pAEDLH7ANLCEU2Qcqm3pm5THvcO7E4z9Om4hxAjweU2Cj+EztPvSMy17Wfn29tODAVJKFxW8Bbr05aP42kNAG05eQKIsUqCkhOLviEsqioPYMXxorxguHGuozmv0okRcmP2ivCnLdZiTfryBs392KqGB0Ql+R6cx5Rj09DAwhM5HiOEUCdCbTy7ijpQs9rWDQecaALOx1x+1PQt1mXV/hDNZPrhihNC+8S89nFn3Q51XJi+zSzA66CoD0l829F1UE14GpOEjWsAIoBz4piPdIGRoLugOtDigRm5K8u28dueIjCt0XVdBHVbU/ZNynxJDzOcvyReq7lqedhKbDUC3brwu4eblqcc/4799SjVYVd+1U1yWNnTQ5bFT7rd23daFIbU+nsEnwTycux8mF/SGDJnvKGPfJDwgkoWBdaJLULcfLiTH+F7FNPdC4rfZvdwHH+EKR3DOCjJMkAFEt4CaXc+r8l2u6r2v5sKpljfL3APFSk8cavXB87E7I1A1di5W1u+zwE2S2+xenNtqm9L19XE7YcAX9W1h0dPxaC2nPdIcsfRYazI3hRHpJ5pkORMLCZwLUHX9iXhV2CHANU5A0ssGTrzo8Ez+Gf28tZk6MwPdf4RjxI3qpGe6H2rIFSVkfuyJgjlok5T9QGAF6T5tBpMw0=", "signatureBase64": "f2LCOEVLhbYrUc77mZt2SgnvvUlsBG97JdGFu6pr3J143cc2PuWJAPiA//CZZz3j7dP0H1INx14bgjTGfRu5br0yEOJUzsn63/I9l9hAQf+6t8TsqbuCHcLcvA9XV1qnhijPR6tVhYU5fEbT70lK4UvSWWg6ag9P99vNUH06TN+C3LFAazCJa3bfE/k0iA1BZzy+12h9zSoGQOe7pGyc4bQAFC69znDkJ7FpXoRScrxt2+GEZ2/P6XJtLLt9JdE4DG+PSQnTi9CZi37Lz9ZvrroycZsdTU4U6ZVU86SJDeDzxGtIsOLjurZVc9pUXJCmreYF7Ea6PxNC+oCDOFn3jmnSWe9he7pjcNV4uM8WnZrfYOSL6tazBbt12RMUVOmSYKL6AVEE78mwDIrAyCcloaP/cJopSQV9SKj5G4etnv81CrphMdz7Ij4Y52uV0NNYo6uBBAaJBRxbg3X99PIoucDCC/krdP3OizspxYtam/667WDOpgGuF7edYfkutYCU1CFTeb8zunBOrIyv5UeprELwTicauZKZuh1ScZnIdtn5QLgX6f307D/wCn1cSB82pOO44ky6/WsLNLB8rJveKJ/elWW/r3ZQ9d+Z2pzI1ZSe2H6T3e85QmvVHm5uLT3XRSBcHP1rpH6qPJbBEo4seRkFc4RG26nod+edOoF/0bU=", "created": 1732795359460, "signerKeyPairUuid": "e925acd1-af66-4ac6-b700-0f0e0724f04e" } }

Description of Fields:

  • conversation: (object) Details about the conversation.
    • uuid: (string) Unique identifier of the conversation.
    • isDialog: (boolean) Indicates if the conversation is a dialog.
    • title: (string|null) Title of the conversation (can be null).
    • sessionKeyUuid: (string) UUID of the session key.
    • created: (number) Timestamp when the conversation was created.
    • lastMessage: (number) Timestamp of the last message sent.
    • unreadedCounter: (number) Count of unread messages.
    • admins: (array) List of admin user IDs.
    • members: (array) List of member user IDs.
    • hasAvatar: (boolean) Indicates if the conversation has an avatar.
    • avatarUpdated: (number) Timestamp when the avatar was last updated.
    • joinedUserId: (string|null) User ID of the joined user (can be null).
    • blocked: (boolean) Indicates if the conversation is blocked.
  • lastMessage: (object) Details about the last message.
    • uuid: (string) Unique identifier of the message.
    • conversationUuid: (string) UUID of the conversation related to the message.
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • ivBase64: (string|null) Initialization vector in base64 (can be null).
    • bodyEncryptedBase64: (string|null) Encrypted message body in base64 (can be null).
    • created: (number) Timestamp when the message was created.
    • hasFiles: (boolean) Indicates if the message has attached files.
    • readed: (boolean) Indicates if the message has been read.
    • userNick: (string) Nickname of the user who sent the message.
    • isEvent: (boolean) Indicates if the message is an event.
    • eventType: (string) Type of the event.
    • eventUserId: (string) ID of the user associated with the event.
    • members: (number) Number of members involved in the event.
    • readedMembers: (number) Count of members who have read the message.
    • deliveredMembers: (number) Count of members to whom the message was delivered.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • deleted: (boolean) Indicates if the message has been deleted.
    • replyMessageUuid: (string|null) UUID of the message this message is replying to (can be null).
  • sessionKey: (object) Details about the session key.
    • uuid: (string) UUID of the session key.
    • conversationUuid: (string) UUID of the conversation associated with the session key.
    • userId: (string) ID of the user associated with the session key.
    • keyEncryptedBase64: (string) Encrypted session key in base64.
    • signatureBase64: (string) Signature in base64 for the session key.
    • created: (number) Timestamp when the session key was created.
    • signerUserId: (string) ID of the user who signed the session key.
    • signerKeyPairUuid: (string) UUID of the signer key pair.

Request: RequestGetSessionKey

{"conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation.
  • sessionKeyUuid: (string) The unique identifier of the session key.

Response: ResponseSessionKeyByUuid

{ "sessionKey": { "uuid": "b8322f5c-92e7-4810-90da-8b167223e496", "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "keyEncryptedBase64": "orIZgsCxgDVbSEpku6pAEDLH7ANLCEU2Qcqm3pm5THvcO7E4z9Om4hxAjweU2Cj+...", "signatureBase64": "f2LCOEVLhbYrUc77mZt2SgnvvUlsBG97JdGFu6pr3J143cc2PuWJAPiA//CZZz3j...", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "created": 1732795359460, "signerKeyPairUuid": "e925acd1-af66-4ac6-b700-0f0e0724f04e" } }

Description of Fields:

  • sessionKey: (object) Details about the session key.
    • uuid: (string) UUID of the session key.
    • conversationUuid: (string) UUID of the associated conversation.
    • userId: (string) ID of the user associated with the session key.
    • keyEncryptedBase64: (string) Encrypted session key in base64.
    • signatureBase64: (string) Signature in base64 for the session key.
    • created: (number) Timestamp when the session key was created.
    • signerUserId: (string) ID of the user who signed the session key.
    • signerKeyPairUuid: (string) UUID of the signer key pair.

Request: MessageDelivered

{"conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "messageUuid": "ddc9ec23-62e9-4a2c-806c-8485ceb644ce"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation.
  • messageUuid: (string) The unique identifier of the message that has been delivered.

Response: ResponseStatusMessage

{"requestType": "MessageDelivered", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request that the response corresponds to.
  • status: (string) Indicates the status of the request execution (e.g., "ok").
  • description: (string|null) Additional description of the result of the request execution (may be null if there is no additional information).

Request: UpdateMemberNick

{"conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "nickEncrypted": "eyJjb252ZXJzYXRpb25VdWlkIjoiNjkyMWQyZmQtZTg4Yy00ODAyLWJiNzAtZDdh...", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation.
  • nickEncrypted: (string) Encrypted nickname of the user.
  • userId: (string) ID of the user updating their nickname.

Response: ResponseStatusMessage

{"requestType": "UpdateMemberNick", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestDeleteConversation

{"conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation to be deleted.

Response: ResponseStatusMessage

{"requestType": "RequestDeleteConversation", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: AddBlackList

{"userId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8="}

Description of Fields:

  • userId: (string) The ID of the user to be added to the blacklist.

Response: ResponseStatusMessage

{"requestType": "AddBlackList", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RemoveBlackList

{"userId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8="}

Description of Fields:

  • userId: (string) The ID of the user to be removed from the blacklist.

Response: ResponseStatusMessage

{"requestType": "RemoveBlackList", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestLeaveConversation

{"conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation to leave.

Response: ResponseStatusMessage

{"requestType": "RequestLeaveConversation", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestAddMember

{"conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "sessionKeyUuid": "9c034e8e-0c3a-4003-8385-5cf4bbbd0e33", "sessionKeyValue": {"keyEncryptedBase64": "jnwK3UFwufotVH/IITjFwdgWbu/QrRxnbbIzjrcLWWRjVppIz9wY8DaXCufuMiVg...", "signatureBase64": "K7IqrCbrFDCup+up4wOsIM6ZZZ4jUolDfNXvJoOfq2Ev9lacXG+DV1d57wWlMBdr...", "signerKeyPairUuid": "e925acd1-af66-4ac6-b700-0f0e0724f04e", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userId": "gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM="}}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation to which the member will be added.
  • sessionKeyUuid: (string) The unique identifier of the session key used for the request.
  • sessionKeyValue: (object) Details about the session key.
    • keyEncryptedBase64: (string) Encrypted session key in base64.
    • signatureBase64: (string) Signature in base64 for the session key.
    • signerKeyPairUuid: (string) UUID of the signer key pair.
    • signerUserId: (string) ID of the user who signed the session key.
    • userId: (string) ID of the user to be added to the conversation.

Response: ResponseStatusMessage

{"requestType": "RequestAddMember", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestAddNewSessionKeys

{"conversationUuid":"f4a74867-290c-4841-aa02-5f4d01603af4","sessionKeys":[{"keyEncryptedBase64":"gMsu4b2wOckAeTwQA4reVm78W1fBP+39+jFul2KLjNjqVqMVhs0N17krDSuAopvJHVGb+E70NWwxwuA+mzXdQMf6GsSuzSmzHny3cNoZXME3Vx+YqUUAMEn3UtiBZMwRnreau9q841jrlIBlXDZi0FLaF/FYGLQayhOFPzzOtOmUC0o8NT70F/WyFLeC1tXLNK2LwlNLkqZcDqT8AOtSf/eolQVff9sG/4HDsNFw53Wi8GJ9I08Dhco9tJCA9XsnMV0wsjF4qNavtM+T/xkZAJ3O6cNk4pVEX7+W0qb4+iX0xmfq5gkXteo0UqXddUxz780nCy/FpToNL4uyfCLRU7lLjqs5MkFDn0S8o7VK0Kphk1p8hBF4kABoxXzNsdGpx2uVuM8qvV15sxkbGewLPAawAI16sdx8is38IQ4hISa+d0geUF0ly+0ccR7+tp21q1dOrc3TUmeIZjejua1D9t9G1njm9HTfQB0yiR7Z0GdFdWSfghZR6Dsq8msiHzXBBXZhYSKWPUo0+obzIDGCK2vs1XogrydWKGV87kcU3LEBulgdXIYWCd1N3VM+4CyNzDWgUXb5IyTtJa7zCz0D2Hravd4kU1gQjYLkmg7GzIB8RqyTfSzg6NomoJ9vWew2Qs4nRaHj3+dyi168oy1QD/UbliguDAJ9f3zaBg8zG6I=","signatureBase64":"il5BmQwVt/KKaMqrCLf8Z6B4XsxbsPhfJ7k049ydLp7EgSA9IcUHyUCUcDvLELl3cimaOzOtl+VuikFqrIvhBkrJd8fYrgD5JSwO0zT7pV96Tj1J6EwRz5XuHC8swEu+V2SfN8TLpYqZ13BElwWZuqvD23FJqYZqTK1oA99EZAPBT4tZkBpBoBflxrhufSWfBS4zKZO2/WqwJqJOF6wpHHjGSIa1z7vzHTXwxAxV1oR5Snm8jBWdY/WXcK4dfQZJ6a8162f6BPnQRj6Ow/n5O5/6TET5j9CVh5KxxOX9oKrm1RpdtWzr2Qd7CiH7WGXmx9HxDtuJHGaSkeyIeN+qL0gsEBiUBsvN4uYcoG0oDuZBlrgJ90m4UEao81otiuq1QRjw2PhYPhpM360HFggWrCUDEbPOsSkeBE00XX5vIJeJQB2doaUy5wYDByU/+9/UYA9bLw8LhS8EpFMQ3k6f8BcwrGYnt+/+JU0wFnwsN0U2du/l8zWUGBp1agSgylfaYQjY/k8mkuHGJuYR/Jc9gaHVkhFwWXLkkPnoMaoTfs0LC2ImRW64DIoNXzbZySuJzRSTyVeBlzCr0UfP8Mcf8efD3sYgZV64tTz7xt8gjNsnOw2C0lZWKcElo/3xJ02lCZI5foaqhJRZJHuzCIwQiQDU47+EzAZsNn7/PPAheSU=","signerKeyPairUuid":"e925acd1-af66-4ac6-b700-0f0e0724f04e","signerUserId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=","userId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="},{"keyEncryptedBase64":"i5cGEa368x26z0yLs3qPtJxfYJL8vcGUZ0YlLMTEm+La/3iUfZNbWFTLrXw3VKS4ocC81SYUDco9lSnya8qqz6ivFH3q4zCoPsx8T3YPXCEJd+UpzCPspXYC/TMqlwKjt07K7juW7/pTQdHvxU0Zsn1Po4mC8LFGLhHPNvr40r8kuQC/5j+Nkc3ax9O4kGbhLDW2dGHAnD3nW1IQt/Pzaj01NdElem0XvnPktJb77B8mItonBjh9AypCMXPbOwqF595bwdfqwuMpZ9jPgklguilydBNq/d0Swp4lK5Og2oZVUmgjkELWeNmPSu13v+zfwrex0YWOFOFgaDbT/lJ5BJ5P7udkqD8bPs2dh7fFgfIr+Nq5d6PNYkaIIjFa/NhuFNbn4cODM9Q/x+fzHwg97GqMbUrtzYHtKYPz6axk59tunqFmSDu2Dj7wfLCUgkyhZAkjFjy968yKegxt12ZpdkXZ6fHBS5kJHWL3eZtMEuR0ScRf5gnMX/UO7GHn908kQ62YCUnU9EoI0J3yVd5oFjmnEkDWVe/ZIU2Pkcj3gpk0JvUfC5hlWqydyz8W/hHX+1NRY4HE6HbM1PpE2O/BM3rkMKvE15IKGwcmMe1yDNRCQHH4GmFBRdGYfDyYgjLLKQ3qoX3DSYP+M8jOpKwiZMMYv/yTeo256A+ERQ+uayI=","signatureBase64":"il5BmQwVt/KKaMqrCLf8Z6B4XsxbsPhfJ7k049ydLp7EgSA9IcUHyUCUcDvLELl3cimaOzOtl+VuikFqrIvhBkrJd8fYrgD5JSwO0zT7pV96Tj1J6EwRz5XuHC8swEu+V2SfN8TLpYqZ13BElwWZuqvD23FJqYZqTK1oA99EZAPBT4tZkBpBoBflxrhufSWfBS4zKZO2/WqwJqJOF6wpHHjGSIa1z7vzHTXwxAxV1oR5Snm8jBWdY/WXcK4dfQZJ6a8162f6BPnQRj6Ow/n5O5/6TET5j9CVh5KxxOX9oKrm1RpdtWzr2Qd7CiH7WGXmx9HxDtuJHGaSkeyIeN+qL0gsEBiUBsvN4uYcoG0oDuZBlrgJ90m4UEao81otiuq1QRjw2PhYPhpM360HFggWrCUDEbPOsSkeBE00XX5vIJeJQB2doaUy5wYDByU/+9/UYA9bLw8LhS8EpFMQ3k6f8BcwrGYnt+/+JU0wFnwsN0U2du/l8zWUGBp1agSgylfaYQjY/k8mkuHGJuYR/Jc9gaHVkhFwWXLkkPnoMaoTfs0LC2ImRW64DIoNXzbZySuJzRSTyVeBlzCr0UfP8Mcf8efD3sYgZV64tTz7xt8gjNsnOw2C0lZWKcElo/3xJ02lCZI5foaqhJRZJHuzCIwQiQDU47+EzAZsNn7/PPAheSU=","signerKeyPairUuid":"e925acd1-af66-4ac6-b700-0f0e0724f04e","signerUserId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=","userId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="}]}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation.
  • sessionKeys: (array) List of session keys to be added.
    • keyEncryptedBase64: (string) Encrypted session key in base64.
    • signatureBase64: (string) Signature in base64 for the session key.
    • signerKeyPairUuid: (string) UUID of the signer key pair.
    • signerUserId: (string) ID of the user who signed the session key.
    • userId: (string) ID of the user associated with the session key.

Response: ResponseAddedSessionKey

{"sessionKeyUuid": "e0aae1c4-a82c-4c50-81a2-b4372dc302db"}

Description of Fields:

  • sessionKeyUuid: (string) UUID of the newly added session key.

Request: RequestRenameConversation

{"conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "title": "eyJjb252ZXJzYXRpb25VdWlkIjoiZjRhNzQ4NjctMjkwYy00ODQxLWFhMDItNWY0..."}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation to rename.
  • title: (string) The new title for the conversation.

Response: ResponseStatusMessage

{"requestType": "RequestRenameConversation", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestGetApplicationsFull

{"confirmed": true}

Description of Fields:

  • confirmed: (boolean) Indicates whether only confirmed applications should be retrieved.

Response: ResponseApplicationsFull

{ "applications": [ { "uuid": "00872601-aee3-41c0-bf21-5cde7b2c48f9", "smsCode": null, "applicationType": "android", "confirmed": true, "created": 1732717294000, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "deviceToken": "dwuj9wJ3QimGkG9E4OuC0e:APA91bEDcmZUrWCmH47MyhaI-X0dHS0S1_USAO8Bk...", "lastLogin": 1732724815000, "online": false, "osVersion": "SDK 34", "vendor": "samsung", "model": "SM-A336B" }, { "uuid": "6F-C2C6B7B15065-6396923166703690188", "smsCode": null, "applicationType": "ios", "confirmed": true, "created": 1732341359000, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "deviceToken": "c8628f52467015cf008a2b9a63b4664da9abdd6d07dac4493009c39912689fb6", "lastLogin": 1732341359000, "online": false, "osVersion": "17.7", "vendor": "Apple Inc.", "model": "iPhone" }, { "uuid": "C0-F5DABCC4A00E-6396923166703690188", "smsCode": null, "applicationType": "ios", "confirmed": true, "created": 1731922517000, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "deviceToken": null, "lastLogin": 1731922517000, "online": false, "osVersion": "17.7", "vendor": "Apple Inc.", "model": "iPhone" } ] }

Description of Fields:

  • applications: (array) List of application objects.
    • uuid: (string) Unique identifier of the application.
    • smsCode: (string|null) SMS code associated with the application (may be null).
    • applicationType: (string) Type of the application (e.g., "android", "ios").
    • confirmed: (boolean) Indicates whether the application is confirmed.
    • created: (number) Timestamp when the application was created.
    • userId: (string) ID of the user associated with the application.
    • deviceToken: (string|null) Device token for the application (may be null).
    • lastLogin: (number) Timestamp of the last login.
    • online: (boolean) Indicates if the application is currently online.
    • osVersion: (string) Operating system version of the application.
    • vendor: (string) Manufacturer of the device running the application.
    • model: (string) Model of the device running the application.

Request: RequestDeleteUser

{"androidSmsToken": "p1VSyoHQY8a", "openUserId": "+35794048714"}

Description of Fields:

  • androidSmsToken: (string) SMS token for verifying the user on Android.
  • openUserId: (string) Phone number of the user to be deleted.

Response: ResponseStatusMessage

{"requestType": "RequestDeleteUser", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestDeleteUserConfirmation

{"code": "121"}

Description of Fields:

  • code: (string) Confirmation code for deleting the user.

Response: ResponseStatusMessage

{"requestType": "RequestDeleteUserConfirmation", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) Type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestGetUserInfo

{"userId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8="}

Description of Fields:

  • userId: (string) The ID of the user whose information is being requested.

Response: ResponseUserInfo

{"user": {"userId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "publicKeyBase64": "-----BEGIN PUBLIC KEY-----\r\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC...", "privateKeyEncryptedBase64": null, "created": 1731917645000, "lastLogin": 1732280198000, "nick": "eyJpdkJhc2U2NCI6Ijd5aDJmV2Q5V3pIenFmWEVxaWh2QkE9PSIsImVuY3J5cHRl...", "avatarUpdated": 1731917645000, "keysUpdated": 1731917672000, "blocked": false, "metaDataKeyEncryptedBase64": null, "keyPairUuid": "7ff6a1e2-52c7-43f4-9b58-76188e8910b7"}}

Description of Fields:

  • user: (object) Details about the user.
    • userId: (string) Unique identifier of the user.
    • publicKeyBase64: (string) Public key of the user in base64 format.
    • privateKeyEncryptedBase64: (string|null) Encrypted private key of the user in base64 (may be null).
    • created: (number) Timestamp when the user was created.
    • lastLogin: (number) Timestamp of the last login of the user.
    • nick: (string) Nickname of the user.
    • avatarUpdated: (number) Timestamp when the user's avatar was last updated.
    • keysUpdated: (number) Timestamp when the user's keys were last updated.
    • blocked: (boolean) Indicates if the user is blocked.
    • metaDataKeyEncryptedBase64: (string|null) Encrypted metadata key in base64 (may be null).
    • keyPairUuid: (string) UUID of the key pair associated with the user.

Request: RequestGetUserInfoMulti

{"userIds": ["2dCjIfc8/3qVOm5I7CXANeUVxUGBGT1XKd2ZVzOvhGc=", "H7H0IIVngKKXGbmUyHZLgXcNefl+LhhhupOKeloV37k="]}

Description of Fields:

  • userIds: (array) An array of user IDs for which user information is requested.

Response: ResponseUserInfoMulti

{ "users": [ { "userId": "2dCjIfc8/3qVOm5I7CXANeUVxUGBGT1XKd2ZVzOvhGc=", "publicKeyBase64": null, "privateKeyEncryptedBase64": null, "created": 1732874500443, "lastLogin": 1732874500443, "nick": null, "avatarUpdated": 1732874500443, "keysUpdated": 1732874500443, "blocked": false, "metaDataKeyEncryptedBase64": null, "keyPairUuid": null }, { "userId": "H7H0IIVngKKXGbmUyHZLgXcNefl+LhhhupOKeloV37k=", "publicKeyBase64": null, "privateKeyEncryptedBase64": null, "created": 1732874500443, "lastLogin": 1732874500443, "nick": null, "avatarUpdated": 1732874500443, "keysUpdated": 1732874500443, "blocked": false, "metaDataKeyEncryptedBase64": null, "keyPairUuid": null } ] }

Description of Fields:

  • users: (array) An array of user objects containing the information of each user.
    • userId: (string) Unique identifier of the user.
    • publicKeyBase64: (string|null) Public key of the user in base64 format (may be null).
    • privateKeyEncryptedBase64: (string|null) Encrypted private key of the user in base64 (may be null).
    • created: (number) Timestamp when the user was created.
    • lastLogin: (number) Timestamp of the last login of the user.
    • nick: (string|null) Nickname of the user (may be null).
    • avatarUpdated: (number) Timestamp when the user's avatar was last updated.
    • keysUpdated: (number) Timestamp when the user's keys were last updated.
    • blocked: (boolean) Indicates if the user is blocked.
    • metaDataKeyEncryptedBase64: (string|null) Encrypted metadata key in base64 (may be null).
    • keyPairUuid: (string|null) UUID of the key pair associated with the user (may be null).

Request: GetNicks

{"conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation for which to retrieve nicknames.

Response: NicksList

{ "nicks": { "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=": "ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICJDd2ZmR2ZoVWdZM2U5UT09IiwK...", "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=": "eyJjb252ZXJzYXRpb25VdWlkIjoiMkEyMkI5RkItM0Y3OS00ODM5LUEzRDYtQjI1..." } }

Description of Fields:

  • nicks: (object) A mapping of user IDs to their corresponding nicknames.
    • userId: (string) The unique identifier of the user.
    • nickname: (string) The nickname associated with the user, potentially encoded (e.g., in base64).

Request: GetBlackList

{"userId": null}

Description of Fields:

  • userId: (string|null) The ID of the user whose blacklist is being requested (can be null).

Response: BlackList

{"users": []}

Description of Fields:

  • users: (array) An array of users in the blacklist (may be empty).

Request: RequestUpdateContactList

{ "contactList": [ { "contactId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoibHEwVFJpTHlSOGp1RjlFZyIsIml2QmFz...", "nickEncrypted": null, "trustedFingerprintEncrypted": null }, { "contactId": "gjSz6SR6CnUTFlx1fI0BVE863u9RlgAH0wTlW8udJQM=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiS1lWWDd2Z05MZEROWWwybyIsIml2QmFz...", "nickEncrypted": null, "trustedFingerprintEncrypted": null }, { "contactId": "FgP/up+bltJwsx2lVhqmXjC2h1nK/761PRrhTqgEncM=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiUm5PZUlrTWZqTmdvUnJZcCIsIml2QmFz...", "nickEncrypted": null, "trustedFingerprintEncrypted": null }, { "contactId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "contactIdEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoibFhXWGRJOTBGQ0h5SC9pdSIsIml2QmFz...", "nickEncrypted": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoicFZyYWFnUzZxZVE4ckE9PSIsIml2QmFz...", "trustedFingerprintEncrypted": null } ], "merge": false }

Description of Fields:

  • contactList: (array) An array of contact objects to be updated.
    • contactId: (string) Unique identifier of the contact.
    • contactIdEncrypted: (string) Encrypted identifier of the contact.
    • nickEncrypted: (string|null) Encrypted nickname of the contact (may be null).
    • trustedFingerprintEncrypted: (string|null) Encrypted trusted fingerprint of the contact (may be null).
  • merge: (boolean) Indicates whether to merge the contacts or not.

Response: ResponseStatusMessage

{"requestType": "RequestUpdateContactList", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of the request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestGetServerSettings

{}

Description of Fields:

  • (empty object): No fields are required in this request.

Response: ResponseServerSettings

{ "supportId": "2dCjIfc8/3qVOm5I7CXANeUVxUGBGT1XKd2ZVzOvhGc=", "adminId": "H7H0IIVngKKXGbmUyHZLgXcNefl+LhhhupOKeloV37k=", "bigBrother": false, "theme": { "buttonBackground": "#2e7d32", "buttonText": "#ffffff", "yourMessageBubbleBackground": "#c9c9f2", "yourMessageBubbleText": "#000000", "theirMessageBubbleBackground": "#FFFFFF", "theirMessageBubbleText": "#000000", "logo": "http://192.168.2.25:80/assets/logo.png", "sound": "http://192.168.2.25:80/assets/notification.mp3" } }

Description of Fields:

  • supportId: (string) Unique identifier for support.
  • adminId: (string) Unique identifier for the admin.
  • bigBrother: (boolean) Indicates whether the "Big Brother" mode is enabled.
  • theme: (object) Theme settings for the application.
    • buttonBackground: (string) Background color for buttons.
    • buttonText: (string) Text color for buttons.
    • yourMessageBubbleBackground: (string) Background color for the user's message bubble.
    • yourMessageBubbleText: (string) Text color for the user's message bubble.
    • theirMessageBubbleBackground: (string) Background color for the other user's message bubble.
    • theirMessageBubbleText: (string) Text color for the other user's message bubble.
    • logo: (string) URL of the logo image.
    • sound: (string) URL of the notification sound.

Request: RequestGetConversationsFull

{"userId": null}

Description of Fields:

  • userId: (string|null) The ID of the user whose conversations are being requested (can be null).

Response: ResponseGetConversationsFull

{ "conversations": [ { "admins": [ "6m76nVOeK46hNbZ1R39tNm0QYWo6+B3Dt0H5OFWBi2g=", "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" ], "avatarUpdated": 1729748153000, "blocked": false, "created": 1729748153237, "hasAvatar": false, "isDialog": true, "joinedUserId": null, "lastMessage": 1730893198093, "members": [], "sessionKeyUuid": "20962b1d-e0e5-42d4-840d-64d6c11e90ce", "title": null, "unreadedCounter": 0, "uuid": "181309f7-2b47-4da6-a506-17f04cd6671c", "dialog": true }, { "admins": ["yyfrLmLb1BlZuC6QOWC/7j41aJAq9+MVcmL0dpfvr74="], "avatarUpdated": 1726559990000, "blocked": false, "created": 1726559990430, "hasAvatar": false, "isDialog": false, "joinedUserId": null, "lastMessage": 1726560094263, "members": ["/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="], "sessionKeyUuid": "DF92E64C-6363-4F2E-992F-83A842849897", "title": "ewogICJzZXNzaW9uS2V5VXVpZCIgOiAiREY5MkU2NEMtNjM2My00RjJFLTk5MkYt...", "unreadedCounter": 0, "uuid": "408ECE6D-A15C-46DF-A181-E74087255781", "dialog": false } ], "firstUnreadMessageUuid": [], "lastMessages": [ { "bodyEncryptedBase64": null, "conversationUuid": "181309f7-2b47-4da6-a506-17f04cd6671c", "created": 1730893198093, "deleted": false, "deliveredMembers": 2, "eventType": "SessionKeyRegenerated", "eventUserId": null, "hasFiles": false, "isEvent": true, "ivBase64": null, "members": 2, "objectionable": false, "readed": true, "readedMembers": 2, "replyMessageUuid": null, "sessionKeyUuid": "20962b1d-e0e5-42d4-840d-64d6c11e90ce", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userNick": "ewogICJjb252ZXJzYXRpb25VdWlkIiA6ICIxODEzMDlmNy0yYjQ3LTRkYTYtYTUw...", "uuid": "ce7701d5-7586-49e7-b7f1-0efba864a941", "event": true }, { "bodyEncryptedBase64": "5cBoJhw=", "conversationUuid": "408ECE6D-A15C-46DF-A181-E74087255781", "created": 1726560094263, "deleted": false, "deliveredMembers": 2, "eventType": null, "eventUserId": null, "hasFiles": false, "isEvent": false, "ivBase64": "MJ92EiUhqWUABljfn8reTg==", "members": 2, "objectionable": false, "readed": true, "readedMembers": 2, "replyMessageUuid": null, "sessionKeyUuid": "DF92E64C-6363-4F2E-992F-83A842849897", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userNick": "ewogICJjb252ZXJzYXRpb25VdWlkIiA6ICI0MDhFQ0U2RC1BMTVDLTQ2REYtQTE4...", "uuid": "05c1334e-48d9-4c9a-82e0-f144d5a1975b", "event": false } ], "members":[ { "avatarUpdated":1729748120000, "blocked":false, "created":1729748120000, "keyPairUuid":"c9f72f1b-78fb-4f0f-8a06-fcc1e1c57ebe", "keysUpdated":1729748153000, "lastLogin":1730913976071, "metaDataKeyEncryptedBase64":"D3QWIl1fSIxQ5h90kCO4EPp2zKjBIeHacIqDNPi3auqKikQJqGHgWvwi53ohcvrW...", "nick":"eyJpdkJhc2U2NCI6Imh1REpCUU1mMG90b2pIbGdoT2pOT1E9PSIsImVuY3J5cHRl...", "privateKeyEncryptedBase64":null, "publicKeyBase64":null, "userId":"6m76nVOeK46hNbZ1R39tNm0QYWo6+B3Dt0H5OFWBi2g=" }, { "avatarUpdated":1728833671000, "blocked":false, "created":1712315448000, "keyPairUuid":"2a726fcb-4285-4f24-a65d-639e94c76f66", "keysUpdated":1716795116000, "lastLogin":1732894714261, "metaDataKeyEncryptedBase64":"Y3K/YVvGgqjGuF4Rx4jB6a/+i+5g7WZ0uQtob2rQohq8HOW+nCuCsT49t//bCJLj...", "nick":"ewogICJlbmNyeXB0ZWRCb2R5QmFzZTY0IiA6ICI5Y01Wb3llYTBCUTdpUT09IiwK...", "privateKeyEncryptedBase64":null, "publicKeyBase64":null, "userId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }, { "avatarUpdated":1724944352000, "blocked":false, "created":1713364445000, "keyPairUuid":"f9299788-ba81-4b74-b4fe-08f85d710ab5", "keysUpdated":1716452583000, "lastLogin":1731139805971, "metaDataKeyEncryptedBase64":"VOH585lgCh2xcMRxxSK0S/idQQBzcFVyP8YvI2wgDGjNW/KJFPM5gTaGs0wvGZki...", "nick":"ewogICJpdkJhc2U2NCIgOiAiRDJOZ2g3NWdcL3ZIRWFFdGtmWE42cGc9PSIsCiAg...", "privateKeyEncryptedBase64":null, "publicKeyBase64":null, "userId":"yyfrLmLb1BlZuC6QOWC/7j41aJAq9+MVcmL0dpfvr74=" } ], "sessionKeys": [ { "conversationUuid": "181309f7-2b47-4da6-a506-17f04cd6671c", "created": 1730893198006, "keyEncryptedBase64": "X35uDeq71ZlvawL2XDAZyKZRMJLnK2RuJnSdKUv/xXj06kkHBYXPT4fUs9I/yk3C...", "signatureBase64": "BJMgk/U6DzBKEgu4u+Twvgw6J/desRhyEp5XUgY+C/D0OhvUWYEkhtRszlqkAEwI...", "signerKeyPairUuid": "2a726fcb-4285-4f24-a65d-639e94c76f66", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "20962b1d-e0e5-42d4-840d-64d6c11e90ce" }, { "conversationUuid": "408ECE6D-A15C-46DF-A181-E74087255781", "created": 1726559994000, "keyEncryptedBase64": "AXJr2rpCNdrNuAEmCupAKRdBTbtaA9W12BoG10GjpGpaKKBnl0klhHJ9Ejj8q3S0...", "signatureBase64": "F+TLChlVUZ26wjkPyUVlJDSHBU/3nw56EiFTRrgBqeBod4CwX1d8UqtNCO7jJJDg...", "signerKeyPairUuid": "f9299788-ba81-4b74-b4fe-08f85d710ab5", "signerUserId": "yyfrLmLb1BlZuC6QOWC/7j41aJAq9+MVcmL0dpfvr74=", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "uuid": "DF92E64C-6363-4F2E-992F-83A842849897" } ] }

Description of Fields:

  • conversations: (array) An array of conversation objects.
    • admins: (array) List of admin user IDs for the conversation.
    • avatarUpdated: (number) Timestamp when the avatar was last updated.
    • blocked: (boolean) Indicates if the conversation is blocked.
    • created: (number) Timestamp when the conversation was created.
    • hasAvatar: (boolean) Indicates if the conversation has an avatar.
    • isDialog: (boolean) Indicates if the conversation is a dialog.
    • joinedUserId: (string|null) User ID of the joined user (may be null).
    • lastMessage: (number) Timestamp of the last message sent in the conversation.
    • members: (array) List of member user IDs for the conversation.
    • sessionKeyUuid: (string) UUID of the session key for the conversation.
    • title: (string|null) Title of the conversation (may be null).
    • unreadedCounter: (number) Count of unread messages in the conversation.
    • uuid: (string) Unique identifier of the conversation.
  • firstUnreadMessageUuid: (array) List of UUIDs of the first unread messages (may be empty).
  • lastMessages: (array) An array of the last messages sent in the conversations.
    • bodyEncryptedBase64: (string|null) The encrypted body of the message in base64 (may be null).
    • conversationUuid: (string) UUID of the conversation to which the message belongs.
    • created: (number) Timestamp of when the message was created.
    • deleted: (boolean) Indicates if the message has been deleted.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • eventType: (string|null) Type of the event if the message is an event (may be null).
    • eventUserId: (string|null) ID of the user associated with the event (may be null).
    • hasFiles: (boolean) Indicates if the message has files attached.
    • isEvent: (boolean) Indicates if the message is an event.
    • ivBase64: (string|null) Initialization vector in base64 for decrypting the message (may be null).
    • members: (number) Count of members in the conversation.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • readed: (boolean) Indicates if the message has been read.
    • readedMembers: (number) Count of members who have read the message.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • userNick: (string) Nickname of the user who sent the message.
    • uuid: (string) Unique identifier of the message.
  • members: (array) An array of user objects containing the information of each user.
    • userId: (string) Unique identifier of the user.
    • publicKeyBase64: (string|null) Public key of the user in base64 format (may be null).
    • privateKeyEncryptedBase64: (string|null) Encrypted private key of the user in base64 (may be null).
    • created: (number) Timestamp when the user was created.
    • lastLogin: (number) Timestamp of the last login of the user.
    • nick: (string|null) Nickname of the user (may be null).
    • avatarUpdated: (number) Timestamp when the user's avatar was last updated.
    • keysUpdated: (number) Timestamp when the user's keys were last updated.
    • blocked: (boolean) Indicates if the user is blocked.
    • metaDataKeyEncryptedBase64: (string|null) Encrypted metadata key in base64 (may be null).
    • keyPairUuid: (string|null) UUID of the key pair associated with the user (may be null).
  • sessionKeys: (array) An array of session keys associated with the conversations.
    • conversationUuid: (string) UUID of the conversation associated with the session key.
    • created: (number) Timestamp when the session key was created.
    • keyEncryptedBase64: (string) The encrypted session key in base64.
    • signatureBase64: (string) The signature of the session key in base64.
    • signerKeyPairUuid: (string) UUID of the key pair that signed the session key.
    • signerUserId: (string) ID of the user who signed the session key.
    • userId: (string) ID of the user associated with the session key.
    • uuid: (string) Unique identifier of the session key.

Request: RequestGetMembersList

{"conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1"}

Description of Fields:

  • conversationUuid: (string) The unique identifier of the conversation for which to retrieve the members list.

Response: ResponseGetMembersList

{"admins": ["upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8="], "members": ["/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y="]}

Description of Fields:

  • admins: (array) List of admin user IDs in the conversation.
  • members: (array) List of member user IDs in the conversation.

Request: RequestAddUserKeys

{ "metaDataKeyEncryptedBase64": "dkxkNn+Q24tfs/9WJnKFzd0jd8nXtgpvzDXaSmhGH69o...", "nick": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiS05iL1dnPT0iLCJpdkJhc2U2NCI6IjFBVGNrd01JK0s0eVEyaVdXSUtRU2c9PSJ9", "privateKeyEncryptedBase64": "-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIIJdjAoBgoqhkiG9w0BDAEDMBo...", "publicKeyBase64": "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A..." }

Description of Fields:

  • metaDataKeyEncryptedBase64: (string) Encrypted metadata key in base64 format.
  • nick: (string) Encrypted nickname of the user in base64 format.
  • privateKeyEncryptedBase64: (string) Encrypted private key of the user.
  • publicKeyBase64: (string) Public key of the user in base64 format.

Response: ResponseStatusMessage

{"requestType":"RequestAddUserKeys","status":"ok","description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestUpdateUserNick

{"nick": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiaVZvVFlQQW1zRHUwIiwiaXZCYXNlNjQi..."}

Description of Fields:

  • nick: (string) New encrypted nickname of the user in base64 format.

Response: ResponseStatusMessage

{"requestType":"RequestUpdateUserNick","status":"ok","description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestUpdateUserKeys

{ "androidSmsToken": "p1VSyoHQY8a", "metaDataKeyEncryptedBase64": "QXAD/JU2N4DKAdVs2bsNz0kXWreZkt2+hWVjiQS6KR9U3jCWsm2n5pYUuLe2Oqb9...", "nick": "eyJlbmNyeXB0ZWRCb2R5QmFzZTY0IjoiL21iTm1RPT0iLCJpdkJhc2U2NCI6Imd1...", "openUserId": "+16266260017", "privateKeyEncryptedBase64": "-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIIJdjAoBgoqhkiG9w0BDAEDMB..." }

Description of Fields:

  • androidSmsToken: (string) SMS token for Android device verification.
  • metaDataKeyEncryptedBase64: (string) Encrypted metadata key in base64 format.
  • nick: (string) New encrypted nickname of the user in base64 format.
  • openUserId: (string) Phone number associated with the user.
  • privateKeyEncryptedBase64: (string) Encrypted private key of the user.

Response: ResponseStatusMessage

{"requestType":"RequestUpdateUserKeys","status":"ok","description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestGetMessagesByUuids

{ "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "uuids": ["7B54A8A2-66D9-4097-8D55-0C78BAE34D58"] }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation from which to retrieve messages.
  • uuids: (array) An array of message UUIDs to retrieve.

Response: ResponseGetMessages

{ "messages": [ { "uuid": "7B54A8A2-66D9-4097-8D55-0C78BAE34D58", "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "sessionKeyUuid": "7E204AC5-DA82-402F-B2B5-B2730C4738F0", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": "sX1k9xuZJ3RLNIMAcmZXcA==", "bodyEncryptedBase64": "sfjz54r7", "created": 1726502379860, "hasFiles": true, "readed": true, "userNick": "ewogICJjb252ZXJzYXRpb25VdWlkIiA6ICI2NkNFMTBFNS05NjlELTQxRTAtOUYy...", "isEvent": false, "eventType": null, "eventUserId": null, "members": 2, "readedMembers": 2, "deliveredMembers": 2, "objectionable": false, "deleted": false, "replyMessageUuid": null } ] }

Description of Fields:

  • messages: (array) An array of message objects.
    • uuid: (string) Unique identifier of the message.
    • conversationUuid: (string) UUID of the conversation to which the message belongs.
    • sessionKeyUuid: (string) UUID of the session key used for the message.
    • userId: (string) ID of the user who sent the message.
    • ivBase64: (string) Initialization vector in base64 for decrypting the message.
    • bodyEncryptedBase64: (string) The encrypted body of the message in base64.
    • created: (number) Timestamp of when the message was created.
    • hasFiles: (boolean) Indicates if the message has files attached.
    • readed: (boolean) Indicates if the message has been read.
    • userNick: (string) Nickname of the user who sent the message.
    • isEvent: (boolean) Indicates if the message is an event.
    • eventType: (string|null) Type of the event if the message is an event (may be null).
    • eventUserId: (string|null) ID of the user associated with the event (may be null).
    • members: (number) Count of members in the conversation.
    • readedMembers: (number) Count of members who have read the message.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • deleted: (boolean) Indicates if the message has been deleted.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).

Request: RequestMessagesReaded

{ "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "messageUuids": ["bd32a119-66e6-4c13-9e90-a516e461ec5c"] }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where messages are read.
  • messageUuids: (array) An array of message UUIDs that have been read.

Response: ResponseStatusMessage

{"requestType":"RequestMessagesReaded","status":"ok","description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestDeleteApplication

{"uuid": "3b5d2a96-e111-4f8e-84ef-e0ef2c160f73"}

Description of Fields:

  • uuid: (string) Unique identifier of the application to be deleted.

Response: ResponseStatusMessage

{"requestType":"RequestDeleteApplication", "status":"ok", "description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestChangeToAdmin

{ "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "userId": "oQgiIm3BqaOyRYioV0HM/3r2U5D8eopjFsvWU+lvw4Y=" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where the user is being promoted to admin.
  • userId: (string) ID of the user being promoted to admin.

Response: ResponseStatusMessage

{"requestType":"RequestChangeToAdmin", "status":"ok", "description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestKickUser

{ "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "userId": "oQgiIm3BqaOyRYioV0HM/3r2U5D8eopjFsvWU+lvw4Y=" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation from which the user is to be kicked.
  • userId: (string) ID of the user being kicked from the conversation.

Response: ResponseStatusMessage

{"requestType":"RequestKickUser", "status":"ok", "description":null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: AddMessageReport

{ "conversationUuid": "70C978F9-1526-4D72-924C-BCFD73DED07D", "messageUuid": "c51843f9-d2fa-4e3e-978c-c913664282d6", "reason": "Spam" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where the message is reported.
  • messageUuid: (string) Unique identifier of the message being reported.
  • reason: (string) Reason for reporting the message (e.g., "Spam").

Response: ResponseStatusMessage

{"requestType": "AddMessageReport", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: MessageDelivered

{ "conversationUuid": "7F818141-AEA4-4C3C-B71B-A5E4D1EAEFD1", "messageUuid": "0c2aa560-c9c4-4372-ace4-d77af02656c2" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where the message was delivered.
  • messageUuid: (string) Unique identifier of the message that was delivered.

Response: ResponseStatusMessage

{"requestType": "MessageDelivered", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestDeleteMessage

{ "conversationUuid": "70C978F9-1526-4D72-924C-BCFD73DED07D", "uuid": "c51843f9-d2fa-4e3e-978c-c913664282d6" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation from which the message is to be deleted.
  • uuid: (string) Unique identifier of the message to be deleted.

Response: ResponseStatusMessage

{"requestType": "RequestDeleteMessage", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestDeleteMessages

{ "conversationUuid": "70C978F9-1526-4D72-924C-BCFD73DED07D", "uuids": ["29F6A11E-7309-413B-AF43-094851454EF9", "EE2B51D2-D68B-46B6-AE04-4A0A39BDE2F3"] }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation from which messages are to be deleted.
  • uuids: (array) An array of message UUIDs to be deleted.

Response: ResponseStatusMessage

{"requestType": "RequestDeleteMessages", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: AddConversationReport

{ "conversationUuid": "70C978F9-1526-4D72-924C-BCFD73DED07D", "reason": "Spam" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation being reported.
  • reason: (string) Reason for reporting the conversation (e.g., "Spam").

Response: ResponseStatusMessage

{"requestType": "AddConversationReport", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: AddUserReport:

{ "reason": "Spam", "userId": "we+Z5bF3KlEyQsUGpRbazkzWGje/NcvXTxRcR5b15VA=" }

Description of Fields:

  • reason: (string) Reason for reporting the user (e.g., "Spam").
  • userId: (string) Unique identifier of the user being reported.

Response: ResponseStatusMessage

{"requestType": "AddUserReport", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestAddAdmin

{ "conversationUuid": "FF1EACD0-E337-4AD1-B476-8D69D1E0F28F", "sessionKeyUuid": "DC9E97B3-6004-41C4-BB0F-8399B1C8D6C2", "sessionKeyValue": { "keyEncryptedBase64": "CFlAVbveqHxsa9tvsi32Zbjb3h6swPM4RZqCNP0jCCu162xzWfrgQxIyPRvrlLqL...", "signatureBase64": "G/+nS+izvCXmyzt8C7CrQ/7DbM8k6h9dHEZbUpUydXs3qSUD9VO1vOSacmwpZmXT...", "signerKeyPairUuid": "2a726fcb-4285-4f24-a65d-639e94c76f66", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "userId": "f9vrQ7Uuvix9wd7Ee73RhD+lUjaouyNf1vNxIA3apGo=" } }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where the admin is being added.
  • sessionKeyUuid: (string) UUID of the session key associated with the request.
  • sessionKeyValue: (object) Contains the encrypted session key and signature information.
    • keyEncryptedBase64: (string) The encrypted session key in base64.
    • signatureBase64: (string) The signature of the session key in base64.
    • signerKeyPairUuid: (string) UUID of the key pair that signed the session key.
    • signerUserId: (string) ID of the user who signed the session key.
    • userId: (string) ID of the user being added as an admin.

Response: ResponseStatusMessage

{"requestType": "RequestAddAdmin", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestConfirmUpdateUserKeys

{"smsCode": "121"}

Description of Fields:

  • smsCode: (string) SMS code used for confirming the update of user keys.

Response: ResponseStatusMessage

{"requestType": "RequestConfirmUpdateUserKeys", "status": "ok", "description": null}

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Request: RequestMarkAllReaded

{ "conversationUuid": "FF1EACD0-E337-4AD1-B476-8D69D1E0F28F" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation for which all messages are to be marked as read.

Response: ResponseStatusMessage

{ "requestType": "RequestMarkAllReaded", "status": "ok", "description": null }

Description of Fields:

  • requestType: (string) The type of request being responded to.
  • status: (string) Status of the request execution (e.g., "ok").
  • description: (string|null) Description of the result of the request execution (may be null).

Notification: NotificationAddMemberToConversation

{ "conversation": { "uuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "isDialog": true, "title": null, "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "created": 1732795356441, "lastMessage": 1732795359460, "unreadedCounter": 0, "admins": [], "members": [], "hasAvatar": false, "avatarUpdated": 1732795356441, "joinedUserId": null, "blocked": false }, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • conversation: (object) Information about the conversation.
    • uuid: (string) Unique identifier of the conversation.
    • isDialog: (boolean) Indicates if the conversation is a dialog.
    • title: (string|null) Title of the conversation (may be null).
    • sessionKeyUuid: (string) UUID of the session key for this conversation.
    • created: (number) Timestamp when the conversation was created.
    • lastMessage: (number) Timestamp of the last message sent in this conversation.
    • unreadedCounter: (number) Count of unread messages.
    • admins: (array) List of admin user IDs in this conversation.
    • members: (array) List of member user IDs in this conversation.
    • hasAvatar: (boolean) Indicates if the conversation has an avatar.
    • avatarUpdated: (number) Timestamp when the avatar was last updated.
    • joinedUserId: (string|null) User ID of the joined user (may be null).
    • blocked: (boolean) Indicates if the conversation is blocked.
  • userId: (string) ID of the user added to the conversation.

Notification: NotificationAddedMessageToConversation

{ "message": { "uuid": "88207239-224b-4e12-a8fa-5132a3070756", "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "sessionKeyUuid": "b8322f5c-92e7-4810-90da-8b167223e496", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "ivBase64": null, "bodyEncryptedBase64": null, "created": 1732795359507, "hasFiles": false, "readed": false, "userNick": "eyJjb252ZXJzYXRpb25VdWlkIioiNjkyMWQyZmQtZTg4Yy00ODAyLWJiNzAtZDdhMTg3NzA5MzllIiwiZW5jcnlwdGVkQm9keUJhc2U2NCI6IjZ0OHZ0bmdMY1lNZVNBPT0iLCJpdkJhc2U2NCI6IklzWlZqU2ZnMTJJVVRDK0JhcitKTHc9PSIsInNlc3Npb25LZXlVdWlkIjoiYjgzMjJmNWMtOTJlNy00ODEwLTkwZGEtOGIxNjcyMjNlNDk2In0=", "isEvent": true, "eventType": "Added", "eventUserId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=", "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false, "replyMessageUuid": null } }

Description of Fields:

  • message: (object) Information about the message added to the conversation.
    • uuid: (string) Unique identifier of the message.
    • conversationUuid: (string) UUID of the conversation where the message was added.
    • sessionKeyUuid: (string) UUID of the session key used for this message.
    • userId: (string) ID of the user who sent the message.
    • ivBase64: (string|null) Initialization vector in base64 for decrypting the message (may be null).
    • bodyEncryptedBase64: (string|null) The encrypted body of the message in base64 (may be null).
    • created: (number) Timestamp of when the message was created.
    • hasFiles: (boolean) Indicates if the message has files attached.
    • readed: (boolean) Indicates if the message has been read.
    • userNick: (string) Nickname of the user who sent the message.
    • isEvent: (boolean) Indicates if the message is an event.
    • eventType: (string|null) Type of the event (may be null).
    • eventUserId: (string) ID of the user associated with the event.
    • members: (number) Count of members in the conversation.
    • readedMembers: (number) Count of members who have read the message.
    • deliveredMembers: (number) Count of members to whom the message has been delivered.
    • objectionable: (boolean) Indicates if the message is objectionable.
    • deleted: (boolean) Indicates if the message has been deleted.
    • replyMessageUuid: (string|null) UUID of the message being replied to (may be null).

Notification: NotificationNewSessionKey

{ "sessionKey": { "uuid": "e0aae1c4-a82c-4c50-81a2-b4372dc302db", "conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "keyEncryptedBase64": "gMsu4b2wOckAeTwQA4reVm78W1fBP+39+jFul2KLjNjqVqMVhs0N17krDSuAopvJHVGb+E70NWwxwuA+mzXdQMf6GsSuzSmzHny3cNoZXME3Vx+YqUUAMEn3UtiBZMwRnreau9q841jrlIBlXDZi0FLaF/FYGLQayhOFPzzOtOmUC0o8NT70F/WyFLeC1tXLNK2LwlNLkqZcDqT8AOtSf/eolQVff9sG/4HDsNFw53Wi8GJ9I08Dhco9tJCA9XsnMV0wsjF4qNavtM+T/xkZAJ3O6cNk4pVEX7+W0qb4+iX0xmfq5gkXteo0UqXddUxz780nCy/FpToNL4uyfCLRU7lLjqs5MkFDn0S8o7VK0Kphk1p8hBF4kABoxXzNsdGpx2uVuM8qvV15sxkbGewLPAawAI16sdx8is38IQ4hISa+d0geUF0ly+0ccR7+tp21q1dOrc3TUmeIZjejua1D9t9G1njm9HTfQB0yiR7Z0GdFdWSfghZR6Dsq8msiHzXBBXZhYSKWPUo0+obzIDGCK2vs1XogrydWKGV87kcU3LEBulgdXIYWCd1N3VM+4CyNzDWgUXb5IyTtJa7zCz0D2Hravd4kU1gQjYLkmg7GzIB8RqyTfSzg6NomoJ9vWew2Qs4nRaHj3+dyi168oy1QD/UbliguDAJ9f3zaBg8zG6I=", "signatureBase64": "il5BmQwVt/KKaMqrCLf8Z6B4XsxbsPhfJ7k049ydLp7EgSA9IcUHyUCUcDvLELl3cimaOzOtl+VuikFqrIvhBkrJd8fYrgD5JSwO0zT7pV96Tj1J6EwRz5XuHC8swEu+V2SfN8TLpYqZ13BElwWZuqvD23FJqYZqTK1oA99EZAPBT4tZkBpBoBflxrhufSWfBS4zKZO2/WqwJqJOF6wpHHjGSIa1z7vzHTXwxAxV1oR5Snm8jBWdY/WXcK4dfQZJ6a8162f6BPnQRj6Ow/n5O5/6TET5j9CVh5KxxOX9oKrm1RpdtWzr2Qd7CiH7WGXmx9HxDtuJHGaSkeyIeN+qL0gsEBiUBsvN4uYcoG0oDuZBlrgJ90m4UEao81otiuq1QRjw2PhYPhpM360HFggWrCUDEbPOsSkeBE00XX5vIJeJQB2doaUy5wYDByU/+9/UYA9bLw8LhS8EpFMQ3k6f8BcwrGYnt+/+JU0wFnwsN0U2du/l8zWUGBp1agSgylfaYQjY/k8mkuHGJuYR/Jc9gaHVkhFwWXLkkPnoMaoTfs0LC2ImRW64DIoNXzbZySuJzRSTyVeBlzCr0UfP8Mcf8efD3sYgZV64tTz7xt8gjNsnOw2C0lZWKcElo/3xJ02lCZI5foaqhJRZJHuzCIwQiQDU47+EzAZsNn7/PPAheSU=", "signerUserId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "created": 1732795498751, "signerKeyPairUuid": "e925acd1-af66-4ac6-b700-0f0e0724f04e" } }

Description of Fields:

  • sessionKey: (object) Information about the new session key.
    • uuid: (string) Unique identifier of the session key.
    • conversationUuid: (string) UUID of the conversation associated with the session key.
    • userId: (string) ID of the user to whom the session key belongs.
    • keyEncryptedBase64: (string) The encrypted session key in base64.
    • signatureBase64: (string) The signature of the session key in base64.
    • signerUserId: (string) ID of the user who signed the session key.
    • created: (number) Timestamp when the session key was created.
    • signerKeyPairUuid: (string) UUID of the key pair that signed the session key.

Notification: NotificationConversationDeleted

{"uuid":"f4a74867-290c-4841-aa02-5f4d01603af4"}

Description of Fields:

  • uuid: (string) Unique identifier of the deleted conversation.

Notification: NotificationConversationLeaved

{ "uuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • uuid: (string) Unique identifier of the conversation that the user left.
  • userId: (string) ID of the user who left the conversation.

Notification: UpdatedMessageNotification

{ "uuid": "de297b27-030e-4065-9016-981ac4fb067e", "conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "members": 2, "readedMembers": 1, "deliveredMembers": 1, "objectionable": false, "deleted": false }

Description of Fields:

  • uuid: (string) Unique identifier of the updated message.
  • conversationUuid: (string) UUID of the conversation where the message was updated.
  • members: (number) Count of members in the conversation.
  • readedMembers: (number) Count of members who have read the updated message.
  • deliveredMembers: (number) Count of members to whom the updated message has been delivered.
  • objectionable: (boolean) Indicates if the updated message is objectionable.
  • deleted: (boolean) Indicates if the updated message has been deleted.

Notification: DeleteMessageNotification

{ "conversationUuid":"70C978F9-1526-4D72-924C-BCFD73DED07D", "messageUuid":"c51843f9-d2fa-4e3e-978c-c913664282d6", "userId":"/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation from which the message was deleted.
  • messageUuid: (string) Unique identifier of the message that was deleted.
  • userId: (string) ID of the user who deleted the message.

Notification: FileReadyNotification

{ "downloadUrl": "http://192.168.2.25:80/download/conversation_2A22B9FB-3F79-4839-A3D6-B25B234E76F1/eaa5835e-30ff-498f-9a95-eb8a8ae93564_SLsoFZZKZLfQ07GTtSKKN18c19cZTN1gDE0wpyJslFylLiA=", "conversationUuid": "2A22B9FB-3F79-4839-A3D6-B25B234E76F1", "messageUuid": "eaa5835e-30ff-498f-9a95-eb8a8ae93564" }

Description of Fields:

  • downloadUrl: (string) URL to download the file associated with the conversation.
  • conversationUuid: (string) Unique identifier of the conversation associated with the file.
  • messageUuid: (string) Unique identifier of the message associated with the file.

Notification: AuthenticationByApplicationNotification

{ "application": { "uuid": "db2553bb-3308-4a53-8c32-30dc3b55dece", "smsCode": null, "applicationType": "android", "confirmed": true, "created": 1732795189440, "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "deviceToken": "cLwzm2RNQT6nAtNax9tPb3:APA91bHs980Cv04GyWR6ZHClhkIfoFalQCYTMs6iyUi44Af_SBRLNy9seblSWfh9ZBmF84cLY9Mpk9qHmvRV0X_5udIYnSzxrN9Pa_iI6H3bMCFha-NMyHc", "lastLogin": 1732795449939, "online": true, "osVersion": "SDK 34", "vendor": "samsung", "model": "SM-A336B" } }

Description of Fields:

  • application: (object) Information about the application.
    • uuid: (string) Unique identifier of the application.
    • smsCode: (string|null) SMS code associated with the application (may be null).
    • applicationType: (string) Type of the application (e.g., "android").
    • confirmed: (boolean) Indicates if the application is confirmed.
    • created: (number) Timestamp when the application was created.
    • userId: (string) ID of the user associated with the application.
    • deviceToken: (string) Device token used for push notifications.
    • lastLogin: (number) Timestamp of the last login.
    • online: (boolean) Indicates if the application is currently online.
    • osVersion: (string) Operating system version of the device.
    • vendor: (string) Device manufacturer (e.g., "samsung").
    • model: (string) Model of the device.

Notification: NotificationNewPublicKey

{ "userId": "9dNAmjirVLHA7P1f3q9rbeBJr/5yctwuPAXZQDGKcIg=", "conversationUuid": null, "keyBase64": "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAjkGabFK95cFweMer6Mf6\nZVqem+tbKBBflMnGecCT4M2Gal74iOs7T7VJPpb4a3QDiIakqoltpWPVrm0bmG3L\nUJv1LvYwDe9r233KuQlziePxX2Z3Zo7X8EOG/IBux3DhRvcGd5/QrlAqafZXXU9a\nkYt3HgQASHIFZKsXwgUYKmOzymGfvX6Pfu94thWcy2lNhr7gZuS8GqZDwfAAOW9/\nc4BWBJsbWDm6bcZhs6utiwVHWuR41oky9OWfrLIDAxvn5Bur0EVNfGh09XIc/G3B\nEK/1Af47KK+a9bD5rEoKf5b34t/hCCoQgmY7SCAsj40Icg5P/LZuwFwCwVaTCBTT\n6yC/ohZjjv/yyOLO4ad5NOVTGpnCuUS9cBoet3FySP1okzDfTQ+ITaSHFvBWk/fw\noVJxDT2sYwxw7F1VEpoMT1ZtNLwku0072JyvhubEVSN/NNc1jAR0VkwQsUudD3mQ\n3nuvMgywDOK+IQVhSSa03egd/KyamL2yjlK3eYWRGC1E8fLDnHVK/vCEEqxJdvC9\ncPPC9ScK25qraxfHwIPLm1Qpf6x5o6Yu76zoKq0kuxFaI4QMc6Oe3gPxYpAWAwkx\nsSldQO9liqOraHIn7XS2rAf+JLZoOkZNzfGhQ17Olkq209JKJEApL2emHOKjaji8\nKG2QebrZj400xb7DAkI2RxECAwEAAQ==\n-----END PUBLIC KEY-----\n" }

Description of Fields:

  • userId: (string) ID of the user associated with the new public key.
  • conversationUuid: (string|null) UUID of the conversation associated with the public key (may be null).
  • keyBase64: (string) The public key in base64 format.

Notification: UpdateContactNotification

{ "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=", "contactId": "upItfdN1OtNK50oxC5YQtGi2E9h1P862YnEVnNUhVA8=" }

Description of Fields:

  • userId: (string) ID of the user whose contact information is updated.
  • contactId: (string) ID of the contact that was updated.

Notification: ConversationAvatarChangedNotification

{ "conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "avatarUpdated": 1732795513262 }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation whose avatar has changed.
  • avatarUpdated: (number) Timestamp when the avatar was last updated.

Notification: NotificationRenameConversation

{ "conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "title": "eyJjb252ZXJzYXRpb25VdWlkIjoiZjRhNzQ4NjctMjkwYy00ODQxLWFhMDItNWY0ZDAxNjAzYWY0IiwiZW5jcnlwdGVkQm9keUJhc2U2NCI6Im8rREwiLCJpdkJhc2U2NCI6IlFDaW1iVXN0Q0dSTitJSlFheTRUTnc9PSIsInNlc3Npb25LZXlVdWlkIjoiZTBhYWUxYzQtYTgyYy00YzUwLTgxYTItYjQzNzJkYzMwMmRiIn0=" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation that was renamed.
  • title: (string) New title of the conversation (encoded in base64).

Notification: ConversationAvatarChangedNotification

{ "conversationUuid": "f4a74867-290c-4841-aa02-5f4d01603af4", "avatarUpdated": 1732795513262 }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation whose avatar has changed.
  • avatarUpdated: (number) Timestamp when the avatar was last updated.

Notification: ConversationNickUpdatedNotification

{ "conversationUuid": "6921d2fd-e88c-4802-bb70-d7a18770939e", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • conversationUuid: (string) UUID of the conversation where the nickname was updated.
  • userId: (string) ID of the user whose nickname was updated.

Notification: NotificationTyping

{ "conversationUuid": "66CE10E5-969D-41E0-9F2A-C279B095F822", "userId": "/4DZItfW2uZQyMCcxDboGMF0SjJs5sfedl9SXWNaO8Y=" }

Description of Fields:

  • conversationUuid: (string) Unique identifier of the conversation where the user is typing.
  • userId: (string) ID of the user who is currently typing in the conversation.