diff --git a/docs/site/static/swagger/openapi.json b/docs/site/static/swagger/openapi.json
index 3fc6d718..41772b9b 100644
--- a/docs/site/static/swagger/openapi.json
+++ b/docs/site/static/swagger/openapi.json
@@ -1 +1 @@
-{"openapi":"3.0.0","paths":{"/api/sessions/start":{"post":{"operationId":"SessionsController_start","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStartRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionDTO"}}}}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions/stop":{"post":{"operationId":"SessionsController_stop","summary":"Stop session","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStopRequest"}}}},"responses":{"201":{"description":""}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions/logout":{"post":{"operationId":"SessionsController_clean","summary":"Logout from session.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionLogoutRequest"}}}},"responses":{"201":{"description":""}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions":{"get":{"operationId":"SessionsController_list","parameters":[{"name":"all","required":false,"in":"query","example":false,"description":"Return all sessions, including those that are in the STOPPED state.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SessionDTO"}}}}}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/checkNumberStatus":{"get":{"operationId":"ChattingController_checkNumberStatus","summary":"Check number status","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WANumberExistResult"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendContactVcard":{"post":{"operationId":"ChattingController_sendContactVcard","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageContactVcardRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendText":{"get":{"operationId":"ChattingController_sendTextGet","summary":"Send a text message","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"text","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]},"post":{"operationId":"ChattingController_sendText","summary":"Send a text message","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageTextRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WAMessage"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendTextButtons":{"post":{"operationId":"ChattingController_sendTextButtons","summary":"Send a text message with buttons","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageTextButtonsRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendLocation":{"post":{"operationId":"ChattingController_sendLocation","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageLocationRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendLinkPreview":{"post":{"operationId":"ChattingController_sendLinkPreview","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageLinkPreviewRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendImage":{"post":{"operationId":"ChattingController_sendImage","summary":"Send an image. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageImageRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendFile":{"post":{"operationId":"ChattingController_sendFile","summary":"Send a file. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageFileRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendVoice":{"post":{"operationId":"ChattingController_sendVoice","summary":"Send an voice message. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageVoiceRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/reply":{"post":{"operationId":"ChattingController_reply","summary":"Reply to a text message","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageReplyRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendSeen":{"post":{"operationId":"ChattingController_sendSeen","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSeenRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/startTyping":{"post":{"operationId":"ChattingController_startTyping","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}}},"responses":{"201":{"description":""}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/stopTyping":{"post":{"operationId":"ChattingController_stopTyping","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}}},"responses":{"201":{"description":""}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/reaction":{"put":{"operationId":"ChattingController_setReaction","summary":"React to a message with an emoji","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageReactionRequest"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/messages":{"get":{"operationId":"ChattingController_getMessages","summary":"Get messages in a chat","parameters":[{"name":"chatId","required":true,"in":"query","example":"11111111111@c.us","schema":{"type":"string"}},{"name":"limit","required":true,"in":"query","schema":{"type":"number"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/contacts":{"get":{"operationId":"ContactsController_get","summary":"Get contact basic info. The method always return result, even if the phone number is not registered in WhatsApp. For that - use /check-exists endpoint below.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/all":{"get":{"operationId":"ContactsController_getAll","summary":"Get all contacts","parameters":[{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/check-exists":{"get":{"operationId":"ContactsController_checkExists","summary":"Check phone number is registered in WhatsApp.","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WANumberExistResult"}}}}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/about":{"get":{"operationId":"ContactsController_getAbout","summary":"Gets the Contact's current \"about\" info. Returns null if you don't have permission to read their status.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/profile-picture":{"get":{"operationId":"ContactsController_getProfilePicture","summary":"Returns the contact's profile picture URL, if privacy settings allow it.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/block":{"post":{"operationId":"ContactsController_block","summary":"Block contact","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactRequest"}}}},"responses":{"201":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/unblock":{"post":{"operationId":"ContactsController_unblock","summary":"Unblock contact","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactRequest"}}}},"responses":{"201":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/{session}/groups":{"post":{"operationId":"GroupsController_createGroup","summary":"Create a new group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGroupRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]},"get":{"operationId":"GroupsController_getGroups","summary":"Get all groups.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}":{"get":{"operationId":"GroupsController_getGroup","summary":"Get the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]},"delete":{"operationId":"GroupsController_deleteGroup","summary":"Delete the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/leave":{"post":{"operationId":"GroupsController_leaveGroup","summary":"Leave the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/description":{"put":{"operationId":"GroupsController_setDescription","summary":"Updates the group description.\nReturns true if the subject was properly updated. This can return false if the user does not have the necessary permissions.\n","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DescriptionRequest"}}}},"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/subject":{"put":{"operationId":"GroupsController_setSubject","summary":"Updates the group subject.\nReturns true if the subject was properly updated. This can return false if the user does not have the necessary permissions.\n","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubjectRequest"}}}},"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/invite-code":{"get":{"operationId":"GroupsController_getInviteCode","summary":"Gets the invite code for a specific group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"string"}}}}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/invite-code/revoke":{"post":{"operationId":"GroupsController_revokeInviteCode","summary":"Invalidates the current group invite code and generates a new one.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"string"}}}}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants":{"get":{"operationId":"GroupsController_getParticipants","summary":"Get a list of participants by in the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants/add":{"post":{"operationId":"GroupsController_addParticipants","summary":"Adds a list of participants by ID to the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants/remove":{"post":{"operationId":"GroupsController_removeParticipants","summary":"Removes a list of participants by ID to the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/admin/promote":{"post":{"operationId":"GroupsController_promoteToAdmin","summary":"Promote participants to admin users.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/admin/demote":{"post":{"operationId":"GroupsController_demoteToAdmin","summary":"Demotes participants by to regular users.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/screenshot":{"get":{"operationId":"ScreenshotController_screenshot","parameters":[{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["screenshot"],"security":[{"api_key":[]}]}},"/api/version":{"get":{"operationId":"VersionController_get","parameters":[],"responses":{"200":{"description":""}},"tags":["other"],"security":[{"api_key":[]}]}}},"info":{"title":"WAHA - WhatsApp HTTP API","description":"WhatsApp HTTP API that you can run in a click!","version":"2023.6.9","contact":{}},"tags":[{"name":"sessions","description":"Control WhatsApp sessions"},{"name":"screenshot","description":"Get screenshot of WhatsApp and show QR code"},{"name":"chatting","description":"Chat methods"},{"name":"contacts","description":"Contacts methods.
\n Use phone number (without +) or phone number and `@c.us` at the end as `contactId`.
\n 'E.g: `12312312310` OR `12312312310@c.us`
"},{"name":"groups","description":"Groups methods.
"},{"name":"other","description":"Other methods"}],"servers":[],"components":{"securitySchemes":{"api_key":{"type":"apiKey","in":"header","name":"X-Api-Key","description":"Your secret api key"}},"schemas":{"SessionStartRequest":{"type":"object","properties":{"name":{"type":"object","default":"default"}},"required":["name"]},"SessionDTO":{"type":"object","properties":{"name":{"type":"object","default":"default"},"status":{"enum":["STOPPED","STARTING","SCAN_QR_CODE","WORKING","FAILED"],"type":"string"}},"required":["name","status"]},"SessionStopRequest":{"type":"object","properties":{"logout":{"type":"object","default":false,"example":false,"description":"Stop and logout from the session."},"name":{"type":"object","default":"default"}},"required":["name"]},"SessionLogoutRequest":{"type":"object","properties":{"name":{"type":"object","default":"default"}},"required":["name"]},"WANumberExistResult":{"type":"object","properties":{"numberExists":{"type":"boolean"}},"required":["numberExists"]},"MessageContactVcardRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"contactsId":{"type":"string"},"name":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","contactsId","name","session"]},"MessageTextRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"mentions":{"description":"Mention contact in the message. The message MUST contain '@123456789' text in order to work with 'mentions' field.","example":["123456789@c.us"],"type":"array","items":{"type":"string"}},"text":{"type":"object","default":"Hi there!"},"session":{"type":"object","default":"default"}},"required":["chatId","text","session"]},"WALocation":{"type":"object","properties":{"description":{"type":"string","nullable":true},"latitude":{"type":"string"},"longitude":{"type":"string"}},"required":["latitude","longitude"]},"WAMessage":{"type":"object","properties":{"id":{"type":"string","description":"Message ID","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"timestamp":{"type":"number","description":"Unix timestamp for when the message was created","example":1666943582},"from":{"type":"string","description":"ID for the Chat that this message was sent to, except if the message was sent by the current user "},"fromMe":{"type":"boolean","description":"Indicates if the message was sent by the current user"},"to":{"type":"string","description":"\n* ID for who this message is for.\n* If the message is sent by the current user, it will be the Chat to which the message is being sent.\n* If the message is sent by another user, it will be the ID for the current user.\n"},"participant":{"type":"string","description":"For groups - participant who sent the message"},"body":{"type":"string","description":"Message content"},"hasMedia":{"type":"boolean","description":"Indicates if the message has media available for download"},"mediaUrl":{"type":"string","description":"The URL for the media in the message if any","example":"http://localhost:3000/api/files/false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA.oga"},"ack":{"enum":[-1,0,1,2,3,4],"type":"number","description":"ACK status for the message"},"author":{"type":"string","description":"If the message was sent to a group, this field will contain the user that sent the message."},"location":{"description":"Location information contained in the message, if the message is type \"location\"","allOf":[{"$ref":"#/components/schemas/WALocation"}]},"vCards":{"description":"List of vCards contained in the message.","type":"array","items":{"type":"string"}},"_data":{"type":"object","description":"Message in a raw format that we get from WhatsApp. May be changed anytime, use it with caution! It depends a lot on the underlying backend."}},"required":["id","timestamp","from","fromMe","to","participant","body","hasMedia","mediaUrl","ack"]},"Button":{"type":"object","properties":{"id":{"type":"string"},"text":{"type":"string"}},"required":["id","text"]},"MessageTextButtonsRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"title":{"type":"string"},"footer":{"type":"string"},"buttons":{"type":"array","items":{"$ref":"#/components/schemas/Button"}},"session":{"type":"object","default":"default"}},"required":["chatId","title","session"]},"MessageLocationRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"latitude":{"type":"number"},"longitude":{"type":"number"},"title":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","latitude","longitude","title","session"]},"MessageLinkPreviewRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"url":{"type":"string"},"title":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","url","title","session"]},"BinaryFile":{"type":"object","properties":{"mimetype":{"type":"string","description":"MIME type of the attachment.","example":"image/jpeg"},"filename":{"type":"string","nullable":true,"description":"Document file name. Optional","example":"filename.jpeg"},"data":{"type":"string","description":"Base64-encoded data of the file","example":"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"}},"required":["mimetype","data"]},"RemoteFile":{"type":"object","properties":{"mimetype":{"type":"string","description":"MIME type of the attachment.","example":"image/jpeg"},"filename":{"type":"string","nullable":true,"description":"Document file name. Value can be null","example":"filename.jpg"},"url":{"type":"string","example":"https://github.com/devlikeapro/whatsapp-http-api/raw/core/examples/dev.likeapro.jpg"}},"required":["mimetype","url"]},"MessageImageRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/BinaryFile"},{"$ref":"#/components/schemas/RemoteFile"}]},"caption":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","file","caption","session"]},"MessageFileRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/BinaryFile"},{"$ref":"#/components/schemas/RemoteFile"}]},"caption":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","file","caption","session"]},"VoiceBinaryFile":{"type":"object","properties":{"mimetype":{"type":"object","default":"audio/ogg; codecs=opus","description":"MIME type of the attachment."},"filename":{"type":"object","default":"voice-message.mp3","description":"Document file name. Optional"},"data":{"type":"string","description":"Base64-encoded data of the file","example":"SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4Ljc2LjEwMAAAAAAAAAAAAAAA//NkxAAW0D4AVN4YAAYAKqTsSE2Z0IlkQMKANEGBUWH7a99t8eFgGQqfrfJxAsocfid8uizPyg535NQgTSs/z6xwJlJc/XKOE8uQtJsTP7ym4u/ky78nQzJw+t+4TvEiw/UftU4TymUVBiqj2qVLlF8X+bWGBLTBZi2+uOml4gA4HEVKHj2Fw89os529yuxD//NkxCcUAGI0FOJGKNWEHAhP3y5/+LZc5OU6X9RI+9M5IZc/fOaJf5y6cTjSBfLxrzjCnoSUCNUgnzokmHoBlzC6CGSrXGjEOPedHzBCkYcOBBpTTNe9/8tGfO5M4inBdS7PsvVusm91LKv4Ycftpwq4YATDG98/QyhKd3V7mZn7wZb2yrt3Y0fiGYpP4aUa//NkxFokCoIwNOpMRV7E1Kqm9vJ123c1F9bGVSKnasqqcezN/4ar26Uz3P8M/AgXq/+6ctsqX+fW6UmfCJ79o9g/CqpFrrpE78sS2V8ApIpklEE02r9II4IDbdNNnFC4dREiIgJFHHcOZjvE9lBMgBQUZzqdOmMDc97ku5pyFwNDph6+LaOyjKaRA6x4x2sc//NkxEwZkcZIVNpGCBophiL5tglY4Lj3qeQceTdr6ur/R11nlO/6KuHORu5SCMucIAApqsZ1I2CBCFxtWZ1tzE3pcvJD87eocViSFHDFuRXMs+q62dVX4O2GtELkoUrIfEbh7506+CEA0VUxhsBLvWABIfGtS8OCcALHMrWskk2pbXJuOEheYHvtaFW9arRY//NkxGgc+ZY8COJGVJsJX1dZg8q3QVzqEQCJapAB18VGV0Kcf+J8F8mNnEbyRRigCGBwCm4AQGjWWcBwIbSN5OhOjQgmU8f6ry3stZNsXzEDM1r44o0zCIuyJMgAejNzadpOkuIVTwXA/BS9ep5F8IvMiz9tM16cuR2SKoggy2MZQtg8BNAidnuNVpsFLpx5//NkxHcgEjJFdOGGtCyrFeW67L62epUITeB47MPJE/N7DOhVOlzQ3shzlhFM2gkw2MBQ0zxwHeTFmAKsdmTYnkf6VQlp4GCOOLPWCLF3sYHocCoKThOYp41Wo93UtOhKLnDyelr+f407RfQ0loWe5+a43SqraakgBnwG4POuQSELhVgoHwVB0OoeCgYj442U//NkxHkjKbZIyuZQTO/HTN86uNWKDHSjaBJ/RdqIU9N6adPSJcjBpAjd5ZQMRpirXYsZphSRhl2BiwAD9ZAHGGWBEzHAU3Ws11wH6d2fdF/sqG9P8pbEqpa2MNUcah+aizKGY8v4+WWNtiSTbbMmyf3K+U5Rez8xte6f9ZqzAIjDxVp4AEmjlm3KWLyoJw1r//NkxG8kSXpQMu5MWDLiYSGiEC1DUiwsLihhGVbL4DpupqbFV9eMCtpMfeuq2rdVeZVjIMHTE8nDqsWwcQxmk3BgCBxhAbhgGDBVBEP6XAIhRMwmTmYYwZ247Uc+cECwUeim6NFyz5cgE0SixFn+fd5Sb0kClO5up2jHtvXhqfSgK48ZRY+xgCaKhmJRI9lr//NkxGAhIT5UFO4MTFtqa6x7kuCp0aq5TakV0uFEJq1b3N9XYzKlRXJPaSjSxK16nqUZU4nVxqUFGJXeenWhgstGlJWAiyYfWYQCQYElQINEwKcFLFqIG1Zg8UvWrXmn1urARzCgoBTosSTkRcfBUVbsDXM62KmDEAkBJIYuNDHnGAAaYAyAwGwK6dYB7GPQ//NkxF4e4R5YXOMGiLWuWmL28y2xduEEPX16UzKUPFHrolYu8zXv879xhWqbVph6jGInGdqQwcFDlqOMrjUxIck9jAYAaslNTOm3mOyEoAq0pPsjKCa8QSZV7WmomOiijP1smCamch4MWEIfTcdiD/8MysS3MIj1h6NBhMoXeaAARIGjNLI4WOMDQOLS4+kR//NkxGUgaXZYVOGGlIXFBZoDP07hI3oN61pXNfrczNjykgKtFEu64tDaAKkkkkkkkiuSIFcvY9AuCM1psOiZD1e2RL5UFGSfVFOxKiSZcOB/rRbEIby4QS/l7HwSQ50PdnO5vF8uaYLg9T7o/0LGAVoE+AnnUhEqHqN+2EiZOousyjbkKCoGzIXFQGBGBcEg//NkxGY11Dq1vnpNhsAoeI90gZTMogfZUtHJiDaiLhMLEIFjgi/rrIXF+zNMlMwtIAFwQc+pTaGwtePD6+tl7j0comzEIh1EyQYLbHpcQ5SF7kZd1NIWQyNQKRC9JnDD6UFiJIGrIKBzkPl2Uq4cmamQz7+7tOxl7FtEH0h06g4OqqDJTBgSqEvrWRlEECjC//NkxBEhKYKUANPSnD4CG3gCwLkHoBMqTKUaUkraqCzctWV+m1bkb8u0ouTmawYa28AxqoQtKHeXrBv5cEpBP6IK/CcgM8Ey2hPrVRHqMT4cYXQFwbZAcIhcmTBOaMnhVz81zINiN///8sMPC3/7n/+qticPkhrRgq5w0OPcxplVBAMcSK16xyfBu6V5E4VO//NkxA8fQe7SVnsE3sqlEuhK9fjDZLxzi6SLBUEewl/scsTkeqdE9uFRUHGoaSs6r+2lvfUOiQ9kXdOx7B+1x2jPQvKC7RPl2PzZ7uzXe1f/5SkZoy2lzQ2FA6cWKCptRB0u3/6Vf+0SoKiglKox7AQEgJh8ISADd6fuBIAUaKk9cslsqjVbKmbz0PPY5Q1+//NkxBUfIaK01sPSlh5ZFGEiMvdwnWn2oMTLJTM2J8t0RhfRR2tLEUkrDGLOos4rOIYcCqAiKoiuom7r2xebLJIlTx44fjk7d8n83YRe957vMH/cwSKL6Ey973mSpMgGTlosv1ecaUut/hE0ILvvGRox6nk1AL2mPfUBUZaSvgWZbhpRdzWxrQ2qsfS4Qmi6//NkxBsgWWKwFsPMnLLjPbZm/+Hp/Fw44c4jYeLAJohxuQaL0ZST7Y3rG5bVb0kahY09mDWHbJTQ7lcxyAsgLkCImGpSeLFqjKWO+szt1WrMpSDqwjc80JbaLzItpImQmNBnf/t1/SBQZHiEsLNJUhlwbQoEgDWNNauCKdiupuITWqBhmGTVEDhJolUxTqPG//NkxBwc4Wq81nsMlh7aUSRnfU3mOSHKcXHggNr2WWu5xRtopJoCBLrRrL1WX2xrcpnD6LkCyUmR0yUWoJjCR77Sw9mBXULCT54Yu0Xrdb/hVS0I3/mTSw7/w6GyoBSMHjLXpqqgkAv1krkkRYNGdtnWV3uRCZjY3Di3rqbqSNhlzSWI00OhwAAcQvlyZaGo//NkxCsdK+rM9njE+zCBnEkZT8iKUmbJBEcUCMSNAxxiWZoqSN//tlV5mb7aKrPeulvuyohyLP////rv03ns6IrqtNN6p3LrKhFRn0akUwsm8ZkkyhudZqIlO/a1dASkgCFg25A5g4wH3DYgeONWRWR5F0rSuv35UUCWGdFkme7Wioowdlp+tKTOglxQIdDs//NkxDkcgZ7U/lmEllYr/sU44cWEhi+sCpF31D0rAKFKjD0tGAkIsfWlkkkieDodcZLB37qXxcNOSQIHaGhVNV6qqhR1SlSSUm1lRiYWROH6A2xUkPSoFND1ytKPu+bBqK93TKimC1i0iELlCdh2brUzdCKYEJBmO22uLhva2uLZ3EQvGqNqW2+KiYpnIZqf//NkxEodEoLEXmIE3uFdKU1ft6UWWu/NtOV2MFJBARFv915Fwi//ijKZ5QPtahDwbPvMOOPta9UJJad1sibIEcAnXUzOin78wDRaiSuCjubzcE4XF3jy82iLCgZdHNdXe0NttCoCkSCqQUsqtTX1rrQ0VUezN/9/F8WRyxaMdBFmkPGnrCA4XUpoG/xKGlVK//NkxFgdUa6w3nmQkoUGufspBpZEMpRb92LyRGYOuPLBUNETxFC+eZYI1QBiWo7bv9cbC4RBNgU2ZOzJlF2I6hncW0XFxQq5joOD4qV1k0mFqK+c0awzlTSR0s1t3Fwl6uZIKmCg7bWIdsjgSDKRpnRGr8vcxrIbKzUVl7316SOkxjs9CJen///Npyf///f///NkxGUc4869vkoEv/MjM0zQT+PLHf03+FAppQiO26Si0wExQTgQZNKKhYVXL/KdqhblIpuWqJEkZJao2zpmnQJzwo/KzF2SsevxgrWgg8ogPCHJC+ZGYI2ADMGCNweE3kigIuDQFGDEH4qBwcUYUz+bXbe4AMoPu/7s24QUHaPJvozFL7kkmPLhgUeLCPpU//NkxHQdQYKAPsmGkBUB40UDw1eB2YYqrAq9/o+y1xKjtHtsXBr0nSf2Vwmm+QRJlXz1m1IVzyOFGEgDDGZVaz3eRW2U4RFBamZ93qsjBtD5znsr2aIZnVX2RKpDvajaEnvzn37TvfX9f/faT/t///8i6rX3INPKHWGrJkprEf6xqTGg6UAvtPBqpnPTuNw1//NkxIIcA758FspEWAuYStUOFnAwRayKry+iKyESNAqfXOu5qY5aIXsruZdM/Z6b1jIKxB4uh2+ai4eSFYcK4fVqaeiZnNyp575zQoX5/c34fn8L/0fInJ48l+F09KZX4/8eN+rndzx47njOiPmj3Nd6SOQRWBYTMnDxEcIuFllGECkpxosYIVIcSiVJ51w+//NkxJUf9DqIFMGGMBolGBvMSYphcBJDXSmhMFFUsV27MeGBQHxCBzaaMCtwETeeCALA0JwkK1nBt2pRB7HrBckAWrpF4kJn0LYWQwa0URuPUN5l7LLlrWrvMhMuPBVwCCIFDLUqLslhZQTOEZoFjKZSQq07QHBQoX0DkWRTrgWmFVJSeW5NkVpKKXrclWbD//NkxJgcYPqSNoGGDBXTKSmTqRYo2Geff0vxs/Ve9dGEwGFWSYiWdaxBoqdDLZ+WPRaFSICcLmgghZVzUDgKz1IZYOfD3YlyEq1PNCo0XEoCUwGh0Ep0TLyRYDDhRQUDKSXeoPHrrcp+pVaQzMkxNFtCYGCLG2kD6fGLVul55lyVwiFQqpkQoBVRO26jXsrF//NkxKkdoVp5QsGMBICJNpVvDpNkX4Cq3oITMVFYSHFAMBTpViFBVDHFlESpVQxrRIDJ0XBU7qUx5Ir1XnohcnaYp6h29Z1ssWU891HmEjoulT1IOIh0uWXy5ugXD4riOBONzmjy5LZ2rS5axrMLvHUbpKLSUtJSkfVgg8NcK4gxOTBmwxwGYMpLGFKhsRqX//NkxLUdoXJuLNJGPMcoba8NYZYZSQK0AsaWROhIVUFVIYLHzaLRcVCcW0ELCT0etKh7nOLY/lr7EfjyzhcjrGPXra57TSqR2yKBgYBYKAFMhp8VWLBskBTeOsbJgMEk5ONhSWmOR/Uq2tYxL+JgY6siVmTvuevWOmuuhmEDw7YfPPIHNKeZKqDBRiC97HCA//NkxMEdyZJEAOMGPJsStxpMWBw2hpNK2EkoWo6tDZEZMFqxtZ3ttJC4CLMNVo2xD01Xit9MQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVCWp22uRw5kSabDVFyMiR3fJHMm7Kqa2/VJP36LdfOxWmM7kNmP2Qyk1R69lK61LthTrXhK3zvf2upFp77P/5Ls6P//NkxMwcOYo8COmGUO7quUhVv0Ifzf8AMvEMxyAk4VFpEr6WS1IhELBEMilySV9Eip/SLZ1E/1BR5gIn/gqVVpcb/WGqkqqzKXqsLXYyJxXVX7FhxtY+WarDn58NVvG+lNQolV2OMeeesP4xr/y/Gq6rDDH5bM3nxjbsh8FH9bXP+F3WNtxmwwV8UqhBGRQV//NkxMUSKaJY/tjEMHxNxVlBbHFqOTd82RCgOSjVxdMVi6VBADDBKWSc0u8/67YcZ1E3VgKQw1PxlABEwkUolRqiTsaJIJTjbLNeGVjSq2uYqtRyo5ZZlZHX3VhQVWf3Va3//9Ucqet/S11v9JTIdnYy3//qjsZFZ+5Vbcqexla5VbW6/qQwVSO3pMrPlDI7//NkxP8g454UCuJGUWisGIZWQwUgpHZyhg4kNUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxP4ibDnMAOGEzFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV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"}},"required":["mimetype","filename","data"]},"VoiceRemoteFile":{"type":"object","properties":{"mimetype":{"type":"object","default":"audio/ogg; codecs=opus","description":"MIME type of the attachment."},"filename":{"type":"object","default":"voice-message.mp3","description":"Document file name. Optional"},"url":{"type":"string","example":"https://github.com/devlikeapro/whatsapp-http-api/raw/core/examples/dev.likeapro.mp3"}},"required":["mimetype","filename","url"]},"MessageVoiceRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/VoiceBinaryFile"},{"$ref":"#/components/schemas/VoiceRemoteFile"}]},"session":{"type":"object","default":"default"}},"required":["chatId","file","session"]},"MessageReplyRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"mentions":{"description":"Mention contact in the message. The message MUST contain '@123456789' text in order to work with 'mentions' field.","example":["123456789@c.us"],"type":"array","items":{"type":"string"}},"reply_to":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"text":{"type":"object","default":"Hi there!"},"session":{"type":"object","default":"default"}},"required":["chatId","reply_to","text","session"]},"SendSeenRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"messageId":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA","description":"NOWEB engine only - it's important to mark ALL messages as seen"},"participant":{"type":"string","example":"11111111111@c.us","description":"NOWEB engine only - the ID of the user that sent the message (undefined for individual chats)"},"session":{"type":"object","default":"default"}},"required":["chatId","session"]},"ChatRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"session":{"type":"object","default":"default"}},"required":["chatId","session"]},"MessageReactionRequest":{"type":"object","properties":{"messageId":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"reaction":{"type":"string","description":"Emoji to react with. Send an empty string to remove the reaction","example":"👍"},"session":{"type":"object","default":"default"}},"required":["messageId","reaction","session"]},"ContactRequest":{"type":"object","properties":{"contactId":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["contactId","session"]},"Participant":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},"CreateGroupRequest":{"type":"object","properties":{"name":{"type":"string"},"participants":{"type":"array","items":{"$ref":"#/components/schemas/Participant"}}},"required":["name","participants"]},"DescriptionRequest":{"type":"object","properties":{"description":{"type":"string"}},"required":["description"]},"SubjectRequest":{"type":"object","properties":{"subject":{"type":"string"}},"required":["subject"]},"ParticipantsRequest":{"type":"object","properties":{"participants":{"type":"array","items":{"$ref":"#/components/schemas/Participant"}}},"required":["participants"]}}},"externalDocs":{"description":"Documentation","url":"https://waha.devlike.pro/"}}
+{"openapi":"3.0.0","paths":{"/api/sessions/start":{"post":{"operationId":"SessionsController_start","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStartRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionDTO"}}}}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions/stop":{"post":{"operationId":"SessionsController_stop","summary":"Stop session","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionStopRequest"}}}},"responses":{"201":{"description":""}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions/logout":{"post":{"operationId":"SessionsController_clean","summary":"Logout from session.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionLogoutRequest"}}}},"responses":{"201":{"description":""}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/sessions":{"get":{"operationId":"SessionsController_list","parameters":[{"name":"all","required":false,"in":"query","example":false,"description":"Return all sessions, including those that are in the STOPPED state.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SessionDTO"}}}}}},"tags":["sessions"],"security":[{"api_key":[]}]}},"/api/checkNumberStatus":{"get":{"operationId":"ChattingController_checkNumberStatus","summary":"Check number status","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WANumberExistResult"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendContactVcard":{"post":{"operationId":"ChattingController_sendContactVcard","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageContactVcardRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendText":{"get":{"operationId":"ChattingController_sendTextGet","summary":"Send a text message","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"text","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]},"post":{"operationId":"ChattingController_sendText","summary":"Send a text message","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageTextRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WAMessage"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendTextButtons":{"post":{"operationId":"ChattingController_sendTextButtons","summary":"Send a text message with buttons","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageTextButtonsRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendLocation":{"post":{"operationId":"ChattingController_sendLocation","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageLocationRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendLinkPreview":{"post":{"operationId":"ChattingController_sendLinkPreview","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageLinkPreviewRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendImage":{"post":{"operationId":"ChattingController_sendImage","summary":"Send an image. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageImageRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendFile":{"post":{"operationId":"ChattingController_sendFile","summary":"Send a file. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageFileRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendVoice":{"post":{"operationId":"ChattingController_sendVoice","summary":"Send an voice message. Either from an URL or base64 data - look at the request schemas for details.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageVoiceRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/reply":{"post":{"operationId":"ChattingController_reply","summary":"Reply to a text message","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageReplyRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/sendSeen":{"post":{"operationId":"ChattingController_sendSeen","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSeenRequest"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/startTyping":{"post":{"operationId":"ChattingController_startTyping","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}}},"responses":{"201":{"description":""}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/stopTyping":{"post":{"operationId":"ChattingController_stopTyping","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChatRequest"}}}},"responses":{"201":{"description":""}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/reaction":{"put":{"operationId":"ChattingController_setReaction","summary":"React to a message with an emoji","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageReactionRequest"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/messages":{"get":{"operationId":"ChattingController_getMessages","summary":"Get messages in a chat","parameters":[{"name":"chatId","required":true,"in":"query","example":"11111111111@c.us","schema":{"type":"string"}},{"name":"limit","required":true,"in":"query","schema":{"type":"number"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object"}}}}},"tags":["chatting"],"security":[{"api_key":[]}]}},"/api/contacts":{"get":{"operationId":"ContactsController_get","summary":"Get contact basic info. The method always return result, even if the phone number is not registered in WhatsApp. For that - use /check-exists endpoint below.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/all":{"get":{"operationId":"ContactsController_getAll","summary":"Get all contacts","parameters":[{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/check-exists":{"get":{"operationId":"ContactsController_checkExists","summary":"Check phone number is registered in WhatsApp.","parameters":[{"name":"phone","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WANumberExistResult"}}}}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/about":{"get":{"operationId":"ContactsController_getAbout","summary":"Gets the Contact's current \"about\" info. Returns null if you don't have permission to read their status.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/profile-picture":{"get":{"operationId":"ContactsController_getProfilePicture","summary":"Returns the contact's profile picture URL, if privacy settings allow it.","parameters":[{"name":"contactId","required":true,"in":"query","schema":{"type":"string"}},{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/block":{"post":{"operationId":"ContactsController_block","summary":"Block contact","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactRequest"}}}},"responses":{"201":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/contacts/unblock":{"post":{"operationId":"ContactsController_unblock","summary":"Unblock contact","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactRequest"}}}},"responses":{"201":{"description":""}},"tags":["contacts"],"security":[{"api_key":[]}]}},"/api/{session}/groups":{"post":{"operationId":"GroupsController_createGroup","summary":"Create a new group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGroupRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]},"get":{"operationId":"GroupsController_getGroups","summary":"Get all groups.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}":{"get":{"operationId":"GroupsController_getGroup","summary":"Get the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]},"delete":{"operationId":"GroupsController_deleteGroup","summary":"Delete the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/leave":{"post":{"operationId":"GroupsController_leaveGroup","summary":"Leave the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/description":{"put":{"operationId":"GroupsController_setDescription","summary":"Updates the group description.\nReturns true if the subject was properly updated. This can return false if the user does not have the necessary permissions.\n","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DescriptionRequest"}}}},"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/subject":{"put":{"operationId":"GroupsController_setSubject","summary":"Updates the group subject.\nReturns true if the subject was properly updated. This can return false if the user does not have the necessary permissions.\n","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubjectRequest"}}}},"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/invite-code":{"get":{"operationId":"GroupsController_getInviteCode","summary":"Gets the invite code for a specific group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"string"}}}}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/invite-code/revoke":{"post":{"operationId":"GroupsController_revokeInviteCode","summary":"Invalidates the current group invite code and generates a new one.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"","content":{"application/json":{"schema":{"type":"string"}}}}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants":{"get":{"operationId":"GroupsController_getParticipants","summary":"Get a list of participants by in the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants/add":{"post":{"operationId":"GroupsController_addParticipants","summary":"Adds a list of participants by ID to the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/participants/remove":{"post":{"operationId":"GroupsController_removeParticipants","summary":"Removes a list of participants by ID to the group.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/admin/promote":{"post":{"operationId":"GroupsController_promoteToAdmin","summary":"Promote participants to admin users.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/groups/{id}/admin/demote":{"post":{"operationId":"GroupsController_demoteToAdmin","summary":"Demotes participants by to regular users.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ParticipantsRequest"}}}},"responses":{"201":{"description":""}},"tags":["groups"],"security":[{"api_key":[]}]}},"/api/{session}/presence":{"get":{"operationId":"PresenceController_getPresenceAll","summary":"Get all subscribed presence information.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/WAHAChatPresences"}}}}}},"tags":["presence"],"security":[{"api_key":[]}]}},"/api/{session}/presence/{chatId}":{"get":{"operationId":"PresenceController_getPresence","summary":"Get the presence for the chat id. If it hasn't been subscribed - it also subscribes to it.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"chatId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WAHAChatPresences"}}}}},"tags":["presence"],"security":[{"api_key":[]}]}},"/api/{session}/presence/{chatId}/subscribe":{"post":{"operationId":"PresenceController_subscribe","summary":"Subscribe to presence events for the chat.","parameters":[{"name":"session","required":true,"in":"path","description":"WhatsApp session name","schema":{"type":"string"}},{"name":"chatId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"tags":["presence"],"security":[{"api_key":[]}]}},"/api/screenshot":{"get":{"operationId":"ScreenshotController_screenshot","parameters":[{"name":"session","required":true,"in":"query","schema":{"default":"default","type":"string"}}],"responses":{"200":{"description":""}},"tags":["screenshot"],"security":[{"api_key":[]}]}},"/api/version":{"get":{"operationId":"VersionController_get","parameters":[],"responses":{"200":{"description":""}},"tags":["other"],"security":[{"api_key":[]}]}}},"info":{"title":"WAHA - WhatsApp HTTP API","description":"WhatsApp HTTP API that you can run in a click!","version":"2023.6.9","contact":{}},"tags":[{"name":"sessions","description":"Control WhatsApp sessions"},{"name":"screenshot","description":"Get screenshot of WhatsApp and show QR code"},{"name":"chatting","description":"Chat methods"},{"name":"contacts","description":"Contacts methods.
\n Use phone number (without +) or phone number and `@c.us` at the end as `contactId`.
\n 'E.g: `12312312310` OR `12312312310@c.us`
"},{"name":"groups","description":"Groups methods.
"},{"name":"presence","description":"Presence information. Available in NOWEB engine only.
"},{"name":"other","description":"Other methods"}],"servers":[{"url":"{protocol}://{host}:{port}/{baseUrl}","description":"","variables":{"protocol":{"default":"http","enum":["http","https"],"description":"The protocol used to access the server."},"host":{"default":"localhost","description":"The hostname or IP address of the server."},"port":{"default":"3000","description":"The port number on which the server is listening for requests"},"baseUrl":{"default":"","description":"The base URL path for all API endpoints. This can be used to group related endpoints together under a common path."}}}],"components":{"securitySchemes":{"api_key":{"type":"apiKey","in":"header","name":"X-Api-Key","description":"Your secret api key"}},"schemas":{"ProxyConfig":{"type":"object","properties":{"server":{"type":"string","example":"localhost:3128"},"username":{"type":"string","example":null},"password":{"type":"string","example":null}},"required":["server"]},"HmacConfiguration":{"type":"object","properties":{"key":{"type":"string","example":"your-secret-key"}},"required":["key"]},"RetriesConfiguration":{"type":"object","properties":{"delaySeconds":{"type":"number","example":2},"attempts":{"type":"number","example":15}},"required":["delaySeconds","attempts"]},"CustomHeader":{"type":"object","properties":{"name":{"type":"string","example":"X-My-Custom-Header"},"value":{"type":"string","example":"Value"}},"required":["name","value"]},"WebhookConfig":{"type":"object","properties":{"url":{"type":"string","example":"https://httpbin.org/post"},"events":{"example":["message"],"type":"array","items":{"type":"string"}},"hmac":{"example":null,"allOf":[{"$ref":"#/components/schemas/HmacConfiguration"}]},"retries":{"example":null,"allOf":[{"$ref":"#/components/schemas/RetriesConfiguration"}]},"customHeaders":{"example":null,"type":"array","items":{"$ref":"#/components/schemas/CustomHeader"}}},"required":["url","events"]},"SessionConfig":{"type":"object","properties":{"proxy":{"example":null,"allOf":[{"$ref":"#/components/schemas/ProxyConfig"}]},"webhooks":{"type":"array","items":{"$ref":"#/components/schemas/WebhookConfig"}}}},"SessionStartRequest":{"type":"object","properties":{"name":{"type":"object","default":"default"},"config":{"$ref":"#/components/schemas/SessionConfig"}},"required":["name"]},"SessionDTO":{"type":"object","properties":{"name":{"type":"object","default":"default"},"status":{"enum":["STOPPED","STARTING","SCAN_QR_CODE","WORKING","FAILED"],"type":"string"},"config":{"$ref":"#/components/schemas/SessionConfig"}},"required":["name","status","config"]},"SessionStopRequest":{"type":"object","properties":{"logout":{"type":"object","default":false,"example":false,"description":"Stop and logout from the session."},"name":{"type":"object","default":"default"}},"required":["name"]},"SessionLogoutRequest":{"type":"object","properties":{"name":{"type":"object","default":"default"}},"required":["name"]},"WANumberExistResult":{"type":"object","properties":{"numberExists":{"type":"boolean"}},"required":["numberExists"]},"MessageContactVcardRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"contactsId":{"type":"string"},"name":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","contactsId","name","session"]},"MessageTextRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"mentions":{"description":"Mention contact in the message. The message MUST contain '@123456789' text in order to work with 'mentions' field.","example":["123456789@c.us"],"type":"array","items":{"type":"string"}},"text":{"type":"object","default":"Hi there!"},"session":{"type":"object","default":"default"}},"required":["chatId","text","session"]},"WALocation":{"type":"object","properties":{"description":{"type":"string","nullable":true},"latitude":{"type":"string"},"longitude":{"type":"string"}},"required":["latitude","longitude"]},"WAMessage":{"type":"object","properties":{"id":{"type":"string","description":"Message ID","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"timestamp":{"type":"number","description":"Unix timestamp for when the message was created","example":1666943582},"from":{"type":"string","description":"ID for the Chat that this message was sent to, except if the message was sent by the current user "},"fromMe":{"type":"boolean","description":"Indicates if the message was sent by the current user"},"to":{"type":"string","description":"\n* ID for who this message is for.\n* If the message is sent by the current user, it will be the Chat to which the message is being sent.\n* If the message is sent by another user, it will be the ID for the current user.\n"},"participant":{"type":"string","description":"For groups - participant who sent the message"},"body":{"type":"string","description":"Message content"},"hasMedia":{"type":"boolean","description":"Indicates if the message has media available for download"},"mediaUrl":{"type":"string","description":"The URL for the media in the message if any","example":"http://localhost:3000/api/files/false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA.oga"},"ack":{"enum":[-1,0,1,2,3,4],"type":"number","description":"ACK status for the message"},"author":{"type":"string","description":"If the message was sent to a group, this field will contain the user that sent the message."},"location":{"description":"Location information contained in the message, if the message is type \"location\"","allOf":[{"$ref":"#/components/schemas/WALocation"}]},"vCards":{"description":"List of vCards contained in the message.","type":"array","items":{"type":"string"}},"_data":{"type":"object","description":"Message in a raw format that we get from WhatsApp. May be changed anytime, use it with caution! It depends a lot on the underlying backend."}},"required":["id","timestamp","from","fromMe","to","participant","body","hasMedia","mediaUrl","ack"]},"Button":{"type":"object","properties":{"id":{"type":"string"},"text":{"type":"string"}},"required":["id","text"]},"MessageTextButtonsRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"title":{"type":"string"},"footer":{"type":"string"},"buttons":{"type":"array","items":{"$ref":"#/components/schemas/Button"}},"session":{"type":"object","default":"default"}},"required":["chatId","title","session"]},"MessageLocationRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"latitude":{"type":"number"},"longitude":{"type":"number"},"title":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","latitude","longitude","title","session"]},"MessageLinkPreviewRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"url":{"type":"string"},"title":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","url","title","session"]},"BinaryFile":{"type":"object","properties":{"mimetype":{"type":"string","description":"MIME type of the attachment.","example":"image/jpeg"},"filename":{"type":"string","nullable":true,"description":"Document file name. Optional","example":"filename.jpeg"},"data":{"type":"string","description":"Base64-encoded data of the file","example":"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"}},"required":["mimetype","data"]},"RemoteFile":{"type":"object","properties":{"mimetype":{"type":"string","description":"MIME type of the attachment.","example":"image/jpeg"},"filename":{"type":"string","nullable":true,"description":"Document file name. Value can be null","example":"filename.jpg"},"url":{"type":"string","example":"https://github.com/devlikeapro/whatsapp-http-api/raw/core/examples/dev.likeapro.jpg"}},"required":["mimetype","url"]},"MessageImageRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/BinaryFile"},{"$ref":"#/components/schemas/RemoteFile"}]},"caption":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","file","caption","session"]},"MessageFileRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/BinaryFile"},{"$ref":"#/components/schemas/RemoteFile"}]},"caption":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["chatId","file","caption","session"]},"VoiceBinaryFile":{"type":"object","properties":{"mimetype":{"type":"object","default":"audio/ogg; codecs=opus","description":"MIME type of the attachment."},"filename":{"type":"object","default":"voice-message.mp3","description":"Document file name. Optional"},"data":{"type":"string","description":"Base64-encoded data of the file","example":"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VSO3pMrPlDI7//NkxP8g454UCuJGUWisGIZWQwUgpHZyhg4kNUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxP4ibDnMAOGEzFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//NkxHwAAANIAAAAAFVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV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"}},"required":["mimetype","filename","data"]},"VoiceRemoteFile":{"type":"object","properties":{"mimetype":{"type":"object","default":"audio/ogg; codecs=opus","description":"MIME type of the attachment."},"filename":{"type":"object","default":"voice-message.mp3","description":"Document file name. Optional"},"url":{"type":"string","example":"https://github.com/devlikeapro/whatsapp-http-api/raw/core/examples/dev.likeapro.mp3"}},"required":["mimetype","filename","url"]},"MessageVoiceRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"file":{"oneOf":[{"$ref":"#/components/schemas/VoiceBinaryFile"},{"$ref":"#/components/schemas/VoiceRemoteFile"}]},"session":{"type":"object","default":"default"}},"required":["chatId","file","session"]},"MessageReplyRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"mentions":{"description":"Mention contact in the message. The message MUST contain '@123456789' text in order to work with 'mentions' field.","example":["123456789@c.us"],"type":"array","items":{"type":"string"}},"reply_to":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"text":{"type":"object","default":"Hi there!"},"session":{"type":"object","default":"default"}},"required":["chatId","reply_to","text","session"]},"SendSeenRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"messageId":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA","description":"NOWEB engine only - it's important to mark ALL messages as seen"},"participant":{"type":"string","example":"11111111111@c.us","description":"NOWEB engine only - the ID of the user that sent the message (undefined for individual chats)"},"session":{"type":"object","default":"default"}},"required":["chatId","session"]},"ChatRequest":{"type":"object","properties":{"chatId":{"type":"string","example":"11111111111@c.us"},"session":{"type":"object","default":"default"}},"required":["chatId","session"]},"MessageReactionRequest":{"type":"object","properties":{"messageId":{"type":"string","example":"false_11111111111@c.us_AAAAAAAAAAAAAAAAAAAA"},"reaction":{"type":"string","description":"Emoji to react with. Send an empty string to remove the reaction","example":"👍"},"session":{"type":"object","default":"default"}},"required":["messageId","reaction","session"]},"ContactRequest":{"type":"object","properties":{"contactId":{"type":"string"},"session":{"type":"object","default":"default"}},"required":["contactId","session"]},"Participant":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},"CreateGroupRequest":{"type":"object","properties":{"name":{"type":"string"},"participants":{"type":"array","items":{"$ref":"#/components/schemas/Participant"}}},"required":["name","participants"]},"DescriptionRequest":{"type":"object","properties":{"description":{"type":"string"}},"required":["description"]},"SubjectRequest":{"type":"object","properties":{"subject":{"type":"string"}},"required":["subject"]},"ParticipantsRequest":{"type":"object","properties":{"participants":{"type":"array","items":{"$ref":"#/components/schemas/Participant"}}},"required":["participants"]},"WAHAPresenceData":{"type":"object","properties":{"participant":{"type":"string","description":"Chat ID - participant or contact id","example":"11111111111@c.us"},"lastSeen":{"type":"number","example":1686568773},"lastKnownPresence":{"type":"string","enum":["offline","online","typing","recording","paused"]}},"required":["participant","lastKnownPresence"]},"WAHAChatPresences":{"type":"object","properties":{"id":{"type":"string","description":"Chat ID - either group id or contact id","example":"11111111111@c.us"},"presences":{"type":"array","items":{"$ref":"#/components/schemas/WAHAPresenceData"}}},"required":["id","presences"]}}},"externalDocs":{"description":"Documentation","url":"https://waha.devlike.pro/"}}
\ No newline at end of file