{"openapi":"3.0.3","info":{"title":"open-wa Easy API","version":"5.2.0"},"servers":[{"url":"http://whatsapp.mast-design.de"}],"paths":{"/api/messages/sendText":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a text message and returns a validated serialized message ID. The in-process Client throws SendTextError on failure. An unknown outcome means the message may have been sent: check the chat before retrying. Starting a chat with a new number requires an applied restricted or premium license.","operationId":"sendText","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"content":{"type":"string","minLength":1,"description":"Message content"},"options":{"description":"Reserved for compatibility with legacy request shapes. The current sendText Client implementation ignores this argument; use reply() or sendTextWithMentions() for quoted replies and mentions."}},"required":["to","content"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendText"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string","pattern":"^(true|false)_[^\\s_]+@[^\\s_]+_[^\\s]+$","description":"Validated serialized message ID. This confirms the send returned an ID, not delivery or reading."}}}}}}}}},"/api/messages/sendTextWithMentions":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a text message that includes @mentions","operationId":"sendTextWithMentions","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"content":{"type":"string","minLength":1,"description":"Message content"},"hideTags":{"description":"Removes all tags within the message","type":"boolean"},"mentions":{"description":"List of mentioned contact IDs","type":"array","items":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}},"required":["to","content"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendTextWithMentions"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendReplyWithMentions":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a reply to a message that includes @mentions","operationId":"sendReplyWithMentions","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"content":{"type":"string","minLength":1,"description":"Message content"},"replyMessageId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"hideTags":{"description":"Removes all tags within the message","type":"boolean"},"mentions":{"description":"List of mentioned contact IDs","type":"array","items":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}},"required":["to","content","replyMessageId"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendReplyWithMentions"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendPaymentRequest":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a payment request message","operationId":"sendPaymentRequest","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"amount":{"type":"number","description":"Amount in 1000 format (e.g £10 => 10000)"},"currency":{"type":"string","minLength":3,"maxLength":3,"description":"3 letter currency code"},"message":{"description":"Optional message","type":"string"}},"required":["to","amount","currency"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendPaymentRequest"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendImage":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends an image to a chat","operationId":"sendImage","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"imgData":{"description":"Image file (path, URL, DataURL, or Base64)","type":"string","pattern":"^data:.+;base64,.+$"},"filename":{"description":"Filename with extension","type":"string"},"caption":{"description":"Media caption","type":"string"},"id":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"waitForId":{"default":false,"description":"Wait for message ID","type":"boolean"}},"required":["to","imgData","waitForId"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendImage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]},{"type":"string"}]}}}}}}}}},"/api/messages/sendFile":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a file or document to a chat","operationId":"sendFile","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"file":{"description":"File (path, URL, DataURL, Base64, or Buffer)","type":"string","pattern":"^data:.+;base64,.+$"},"filename":{"description":"Filename with extension","type":"string"},"caption":{"description":"Media caption","type":"string"}},"required":["to","file"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendFile"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"string"}]}}}}}}}}},"/api/messages/sendAudio":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends an audio file to a chat","operationId":"sendAudio","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"file":{"description":"Audio file (path, URL, DataURL, or Base64)","type":"string","pattern":"^data:.+;base64,.+$"},"filename":{"description":"Filename with extension","type":"string"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},"required":["to","file"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendAudio"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendPtt":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a voice note (push-to-talk) to a chat","operationId":"sendPtt","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"file":{"description":"Audio file (path, URL, DataURL, or Base64)","type":"string","pattern":"^data:.+;base64,.+$"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},"required":["to","file"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendPtt","POST /api/sendVoiceNote","POST /api/messages/sendVoiceNote"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendVideoAsGif":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a video as an animated GIF","operationId":"sendVideoAsGif","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"file":{"description":"Video file (path, URL, DataURL, or Base64)","type":"string","pattern":"^data:.+;base64,.+$"},"filename":{"description":"Filename with extension","type":"string"},"caption":{"description":"Media caption","type":"string"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},"required":["to","file"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendVideoAsGif"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendLocation":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a location to a chat","operationId":"sendLocation","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"lat":{"anyOf":[{"type":"number"},{"type":"string"}],"description":"Latitude coordinate"},"lng":{"anyOf":[{"type":"number"},{"type":"string"}],"description":"Longitude coordinate"},"loc":{"description":"Location name or description","type":"string"},"address":{"description":"Address text","type":"string"},"url":{"description":"Address link","type":"string","format":"uri"}},"required":["to","lat","lng"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendLocation"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendVCard":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a contact card (vCard)","operationId":"sendVCard","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"vcard":{"type":"string","description":"vCard string"},"contactName":{"description":"Contact display name","type":"string"},"contactNumber":{"description":"Contact number with country code","type":"string"}},"required":["to","vcard"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendVCard"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/sendContact":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a single contact","operationId":"sendContact","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"contactId":{"anyOf":[{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"},{"type":"array","items":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}]}},"required":["to","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendContact"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]},{"not":{},"description":"No JSON value; the response data property is omitted."}]}}}}}}}}},"/api/messages/sendContacts":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends multiple contacts","operationId":"sendMultipleContacts","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"contactIds":{"type":"array","items":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}},"required":["to","contactIds"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendMultipleContacts","POST /api/sendContacts","POST /api/messages/sendMultipleContacts"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendButtons":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a button message (deprecated)","operationId":"sendButtons","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"body":{"anyOf":[{"type":"string"},{}],"description":"Message body or location"},"buttons":{"maxItems":3,"type":"array","items":{},"description":"Array of buttons (max 3)"},"title":{"description":"Message title","type":"string"},"footer":{"description":"Message footer","type":"string"}},"required":["to","body","buttons"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendButtons"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendAdvancedButtons":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends an advanced button message with media (deprecated)","operationId":"sendAdvancedButtons","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"body":{"anyOf":[{"type":"string"},{}],"description":"Message body, location, or media"},"buttons":{"maxItems":3,"type":"array","items":{},"description":"Array of advanced buttons (max 3)"},"text":{"type":"string","description":"Message text"},"footer":{"type":"string","description":"Message footer"},"filename":{"type":"string","description":"Filename if body is a file"}},"required":["to","body","buttons","text","footer","filename"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendAdvancedButtons"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendList":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a list/menu message (deprecated)","operationId":"sendListMessage","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"sections":{"type":"array","items":{},"description":"List sections"},"title":{"type":"string","description":"List title"},"description":{"type":"string","description":"List description"},"actionText":{"type":"string","description":"Action button text"}},"required":["to","sections","title","description","actionText"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendListMessage","POST /api/sendList"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendPoll":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a poll message","operationId":"sendPoll","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"name":{"type":"string","description":"Poll question"},"options":{"minItems":2,"maxItems":12,"type":"array","items":{"type":"string"},"description":"Poll options (2-12)"},"selectableCount":{"default":1,"description":"Number of selectable options","type":"number"}},"required":["to","name","options","selectableCount"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendPoll"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendBanner":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a banner image","operationId":"sendBanner","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"base64":{"type":"string","description":"Base64 encoded JPEG"}},"required":["to","base64"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendBanner"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendYouTubeLink":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a YouTube link with auto-generated preview","operationId":"sendYouTubeLink","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"url":{"type":"string","format":"uri","description":"YouTube URL"},"text":{"default":"","type":"string","minLength":1,"description":"Message content"},"thumbnail":{"description":"Base64 thumbnail override","type":"string"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"customSize":{"description":"Custom thumbnail size","type":"object","properties":{"height":{"type":"number"},"width":{"type":"number"}},"required":["height","width"],"additionalProperties":false}},"required":["to","url","text"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendYouTubeLink","POST /api/sendYoutubeLink","POST /api/messages/sendYoutubeLink"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendLinkWithAutoPreview":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a link with auto-generated preview","operationId":"sendLinkWithAutoPreview","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"url":{"type":"string","format":"uri","description":"Link URL"},"text":{"type":"string","minLength":1,"description":"Message content"},"thumbnail":{"description":"Base64 thumbnail override","type":"string"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"customSize":{"description":"Custom thumbnail size","type":"object","properties":{"height":{"type":"number"},"width":{"type":"number"}},"required":["height","width"],"additionalProperties":false}},"required":["to","url"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendLinkWithAutoPreview","POST /api/sendLink","POST /api/messages/sendLink"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/sendLinkWithThumbnail":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Sends a link preview message with custom thumbnail","operationId":"sendMessageWithThumb","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"thumb":{"type":"string","description":"Base64 thumbnail (max 200x200px)"},"url":{"type":"string","format":"uri","description":"Link URL"},"title":{"type":"string","description":"Link title"},"description":{"type":"string","description":"Link description"},"content":{"type":"string","minLength":1,"description":"Message content"},"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"quotedMsgId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"customSize":{"description":"Custom thumbnail size","type":"object","properties":{"height":{"type":"number"},"width":{"type":"number"}},"required":["height","width"],"additionalProperties":false}},"required":["thumb","url","title","description","content","to"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendMessageWithThumb","POST /api/sendLinkWithThumbnail","POST /api/messages/sendWithThumb"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."},{"type":"boolean"}]}}}}}}}}},"/api/messages/forward":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Forwards messages to a chat","operationId":"forwardMessages","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"messages":{"anyOf":[{"type":"array","items":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}],"description":"Message ID(s) to process"},"skipMyMessages":{"default":false,"description":"Skip own messages","type":"boolean"}},"required":["to","messages","skipMyMessages"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/forwardMessages"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"array","items":{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"object","properties":{"_serialized":{"type":"string"}},"required":["_serialized"],"additionalProperties":{}}],"description":"A message ID as a string or an object containing the serialized ID. Validate it before passing it to another method."}},{"type":"boolean"}]}}}}}}}}},"/api/messages/delete":{"delete":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Deletes a message","operationId":"deleteMessage","tags":["messages"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},{"name":"messageId","in":"query","required":true,"description":"Message ID(s) to process","schema":{"anyOf":[{"type":"array","items":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}],"description":"Message ID(s) to process"}},{"name":"onlyLocal","in":"query","required":true,"description":"Delete only locally","schema":{"default":false,"description":"Delete only locally","type":"boolean"}}],"x-openwa-aliases":["DELETE /api/deleteMessage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/get":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Retrieves a specific message by ID","operationId":"getMessageById","tags":["messages"],"parameters":[{"name":"messageId","in":"query","required":true,"description":"Message ID","schema":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}}],"x-openwa-aliases":["GET /api/getMessageById","GET /api/getMessage","GET /api/messages/getById"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/messages/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Retrieves all messages in the session","operationId":"getAllMessages","tags":["messages"],"parameters":[{"name":"chatId","in":"query","required":false,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},{"name":"includeMe","in":"query","required":true,"description":"Include own messages","schema":{"default":true,"description":"Include own messages","type":"boolean"}},{"name":"includeNotifications","in":"query","required":true,"description":"Include notification messages","schema":{"default":false,"description":"Include notification messages","type":"boolean"}}],"x-openwa-aliases":["GET /api/getAllMessages","GET /api/listMessages","GET /api/messages/all","GET /api/messages/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}}}}}}}}}},"/api/messages/getMyLast":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get last message sent by host","operationId":"getMyLastMessage","tags":["messages"],"parameters":[{"name":"chatId","in":"query","required":false,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["GET /api/getMyLastMessage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}}}}}}}}},"/api/messages/getStarred":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get starred messages","operationId":"getStarredMessages","tags":["messages"],"parameters":[{"name":"chatId","in":"query","required":false,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["GET /api/getStarredMessages"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}}}}}}}}}},"/api/messages/getUnsent":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get unsent/pending messages","operationId":"getUnsentMessages","tags":["messages"],"parameters":[],"x-openwa-aliases":["GET /api/getUnsentMessages"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}}}}}}}}}},"/api/messages/getInfo":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get message delivery info","operationId":"getMessageInfo","tags":["messages"],"parameters":[{"name":"messageId","in":"query","required":true,"description":"Message ID","schema":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}}],"x-openwa-aliases":["GET /api/getMessageInfo"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"deliveryRemaining":{"type":"number"},"playedRemaining":{"type":"number"},"readRemaining":{"type":"number"},"delivery":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"t":{"type":"number"}},"required":["id","t"],"additionalProperties":false}},"read":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"t":{"type":"number"}},"required":["id","t"],"additionalProperties":false}},"played":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"t":{"type":"number"}},"required":["id","t"],"additionalProperties":false}}},"required":["id","deliveryRemaining","playedRemaining","readRemaining","delivery","read","played"],"additionalProperties":{}}}}}}}}}},"/api/messages/getVCards":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Extract vCards from message","operationId":"getVCards","tags":["messages"],"parameters":[{"name":"messageId","in":"query","required":true,"description":"Message ID","schema":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}}],"x-openwa-aliases":["GET /api/getVCards"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string"}}}}}}}}}},"/api/messages/getForLLM":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get messages formatted for LLMs","operationId":"getMessagesForLLM","tags":["messages"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},{"name":"last","in":"query","required":true,"description":"Argument: last","schema":{"default":10,"type":"number"}}],"x-openwa-aliases":["GET /api/getMessagesForLLM","GET /api/getGptArray","GET /api/messages/getGptArray"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"role":{"type":"string","enum":["user","assistant"]},"content":{"type":"string"}},"required":["role","content"],"additionalProperties":false}}}}}}}}}},"/api/messages/star":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Star a message","operationId":"starMessage","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"messageId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},"required":["messageId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/starMessage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/unstar":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Unstar a message","operationId":"unstarMessage","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"messageId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"}},"required":["messageId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/unstarMessage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/react":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"React to message with emoji","operationId":"react","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"messageId":{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},"emoji":{"type":"string","description":"Emoji reaction"}},"required":["messageId","emoji"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/react"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/sendSeen":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Mark message as seen","operationId":"sendSeen","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/sendSeen"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/messages/loadEarlier":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Loads earlier messages from a chat","operationId":"loadEarlierMessages","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"count":{"description":"Number of messages to load (default: 20)","type":"number","minimum":0,"exclusiveMinimum":true},"includeMe":{"description":"Whether to include messages from the host account (default: false)","type":"boolean"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/loadEarlierMessages","POST /api/loadOlderMessages","POST /api/messages/loadOlder"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}}}}}}}}}},"/api/messages/sendFileFromUrl":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Downloads a file from a URL and sends it to a chat","operationId":"sendFileFromUrl","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"url":{"type":"string","format":"uri","description":"URL of the file to download"},"filename":{"type":"string","description":"Filename for the sent file"},"caption":{"description":"Caption for the file","type":"string"},"headers":{"description":"HTTP headers for the download request","type":"object","additionalProperties":{"type":"string"}}},"required":["to","url","filename"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/sendFileFromUrl"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"}],"description":"Message ID or success status"}}}}}}}}},"/api/chats/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Returns serialized Chat objects from the current session, optionally limited to chats with unread messages.","operationId":"getAllChats","tags":["chats"],"parameters":[{"name":"withNewMessagesOnly","in":"query","required":true,"description":"Only chats with unread messages","schema":{"default":false,"description":"Only chats with unread messages","type":"boolean"}}],"x-openwa-aliases":["GET /api/getAllChats","GET /api/listChats","GET /api/chats/all","GET /api/chats/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."}}}}}}}}}},"/api/chatIds/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get all chat IDs","operationId":"getAllChatIds","tags":["chatIds"],"parameters":[],"x-openwa-aliases":["GET /api/getAllChatIds","GET /api/chats/ids","GET /api/listChatIds","GET /api/chatIds/all","GET /api/chatIds/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."}}}}}}}}}},"/api/chats/get":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get specific chat by ID","operationId":"getChat","tags":["chats"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["GET /api/getChat","GET /api/getChatById","GET /api/chats/getById"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/chats/getWithNonContacts":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get chats with non-contacts","operationId":"getChatWithNonContacts","tags":["chats"],"parameters":[],"x-openwa-aliases":["GET /api/getChatWithNonContacts"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}}}}}}}}}},"/api/chats/archive":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Archive a chat","operationId":"archiveChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/archiveChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/unarchive":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Unarchive a chat","operationId":"unarchiveChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/unarchiveChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/clear":{"delete":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Clear chat history","operationId":"clearChat","tags":["chats"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["DELETE /api/clearChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/delete":{"delete":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Delete a chat","operationId":"deleteChat","tags":["chats"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["DELETE /api/deleteChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/pin":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Pin a chat","operationId":"pinChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/pinChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/unpin":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Unpin a chat","operationId":"unpinChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/unpinChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/mute":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Mute a chat","operationId":"muteChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"muteDuration":{"anyOf":[{"type":"number"},{"type":"string"}],"description":"Mute duration"}},"required":["chatId","muteDuration"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/muteChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}}}}}}}}},"/api/chats/unmute":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Unmute a chat","operationId":"unmuteChat","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/unmuteChat"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}}}}}}}}},"/api/chats/markAsRead":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Mark chat as read","operationId":"markAsRead","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/markAsRead"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/markAsUnread":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Mark chat as unread","operationId":"markAsUnread","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/markAsUnread"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/setEphemeral":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set ephemeral messages for chat","operationId":"setChatEphemeral","tags":["chats"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chatId":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"ephemeral":{"anyOf":[{"type":"boolean"},{"type":"number"}],"description":"Ephemeral setting"}},"required":["chatId","ephemeral"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setChatEphemeral"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/chats/isOnline":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Check if chat is online","operationId":"isChatOnline","tags":["chats"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["GET /api/isChatOnline"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"boolean"},{"type":"string"}]}}}}}}}}},"/api/contacts/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Retrieves all contacts","operationId":"getAllContacts","tags":["contacts"],"parameters":[],"x-openwa-aliases":["GET /api/getAllContacts","GET /api/listContacts","GET /api/contacts/all","GET /api/contacts/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}}}}}}}}}},"/api/contacts/get":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get specific contact","operationId":"getContact","tags":["contacts"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getContact"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}}}}}}}}},"/api/contacts/getCommonGroups":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get common groups with contact","operationId":"getCommonGroups","tags":["contacts"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getCommonGroups"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"title":{"type":"string"}},"required":["id","title"],"additionalProperties":{}}},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/contacts/getNumberProfile":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get profile of number","operationId":"getNumberProfile","tags":["contacts"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getNumberProfile"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"additionalProperties":{},"description":"Provisional number profile based on the public Contact fields. Fields are optional and additional provider fields are unknown. The licensed getNumberProfile payload has not been verified against this model."}}}}}}}}},"/api/contacts/getBlockedIds":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get blocked contact IDs","operationId":"getBlockedIds","tags":["contacts"],"parameters":[],"x-openwa-aliases":["GET /api/getBlockedIds"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/contacts/block":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Block a contact","operationId":"blockContact","tags":["contacts"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/blockContact","PUT /api/contactBlock","PUT /api/contacts/contactBlock"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/contacts/unblock":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Unblock a contact","operationId":"unblockContact","tags":["contacts"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/unblockContact","PUT /api/contactUnblock","PUT /api/contacts/contactUnblock"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/contacts/checkReadReceipts":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Check read receipts setting","operationId":"checkReadReceipts","tags":["contacts"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/checkReadReceipts","GET /api/getReadReceipts","GET /api/contacts/getReadReceipts"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"boolean"},{"type":"string"}]}}}}}}}}},"/api/contacts/checkNumberStatus":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Check if number is on WhatsApp","operationId":"checkNumberStatus","tags":["contacts"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/checkNumberStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"anyOf":[{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}]},"status":{"description":"HTTP-like status code, or a provider error value when lookup fails."},"isBusiness":{"type":"boolean"},"canReceiveMessage":{"type":"boolean"},"numberExists":{"type":"boolean"}},"required":["id","status","canReceiveMessage"],"additionalProperties":{}}}}}}}}}},"/api/contacts/getProfilePicture":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get profile picture from server","operationId":"getProfilePicture","tags":["contacts"],"parameters":[{"name":"chatId","in":"query","required":true,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}}],"x-openwa-aliases":["GET /api/getProfilePicture","GET /api/getProfilePicFromServer","GET /api/contacts/getProfilePicFromServer"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/groups/getMembers":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Retrieves members of a group","operationId":"getGroupMembers","tags":["groups"],"parameters":[{"name":"groupId","in":"query","required":true,"description":"Group chat ID","schema":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getGroupMembers"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}}}}}}}}}},"/api/groups/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get all groups","operationId":"getAllGroups","tags":["groups"],"parameters":[{"name":"withNewMessagesOnly","in":"query","required":true,"description":"Only chats with unread messages","schema":{"default":false,"description":"Only chats with unread messages","type":"boolean"}}],"x-openwa-aliases":["GET /api/getAllGroups","GET /api/listGroups","GET /api/groups/all","GET /api/groups/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."}}}}}}}}}},"/api/groups/getMemberIds":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get group member IDs","operationId":"getGroupMembersId","tags":["groups"],"parameters":[{"name":"groupId","in":"query","required":true,"description":"Group chat ID","schema":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getGroupMembersId","GET /api/getGroupMemberIds","GET /api/groups/getMembersId"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}}}}}}}}}},"/api/groups/getInfo":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get group metadata","operationId":"getGroupInfo","tags":["groups"],"parameters":[{"name":"groupId","in":"query","required":true,"description":"Group chat ID","schema":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getGroupInfo"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."}}}}}}}}},"/api/groups/getAdmins":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get group admins","operationId":"getGroupAdmins","tags":["groups"],"parameters":[{"name":"groupId","in":"query","required":true,"description":"Group chat ID","schema":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getGroupAdmins"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}}}}}}}}}},"/api/groups/getKicked":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get groups where kicked","operationId":"getKickedGroups","tags":["groups"],"parameters":[],"x-openwa-aliases":["GET /api/getKickedGroups"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."}}}}}}}}}},"/api/groups/getInviteLink":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get group invite link","operationId":"getGroupInviteLink","tags":["groups"],"parameters":[{"name":"groupId","in":"query","required":true,"description":"Group chat ID","schema":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getGroupInviteLink"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/groups/create":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Create new group","operationId":"createGroup","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Group name"},"contacts":{"type":"array","items":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"},"description":"Contact IDs to add"}},"required":["name","contacts"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/createGroup"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"nullable":true,"type":"object","properties":{"gid":{"anyOf":[{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false}]},"status":{"type":"number"},"participants":{"anyOf":[{"type":"object","additionalProperties":{"type":"object","properties":{"code":{"type":"number"},"invite_code":{"type":"string"},"invite_code_exp":{"type":"string"}},"required":["code"],"additionalProperties":false}},{"type":"array","items":{"type":"object","additionalProperties":{}}}]}},"required":["gid"],"additionalProperties":{}}}}}}}}}},"/api/groups/leave":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Leave a group","operationId":"leaveGroup","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}},"required":["groupId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/leaveGroup"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"not":{},"description":"No JSON value; the response data property is omitted."}}}}}}}}},"/api/groups/join":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Join group via invite link","operationId":"joinGroupViaLink","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"link":{"type":"string","format":"uri","description":"Group invite link"},"returnChatObj":{"description":"Return chat object","type":"boolean"}},"required":["link"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/joinGroupViaLink","POST /api/joinGroup","POST /api/groups/joinViaLink"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."},{"type":"boolean"},{"type":"number"},{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."}]}}}}}}}}},"/api/groups/revokeInviteLink":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Revoke group invite link","operationId":"revokeGroupInviteLink","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}},"required":["groupId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/revokeGroupInviteLink"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"}]}}}}}}}}},"/api/groups/setTitle":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set group title","operationId":"setGroupTitle","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"title":{"type":"string","description":"New group title"}},"required":["groupId","title"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setGroupTitle"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/setDescription":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set group description","operationId":"setGroupDescription","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"description":{"type":"string","description":"New group description"}},"required":["groupId","description"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setGroupDescription"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/setIcon":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set group icon","operationId":"setGroupIcon","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"image":{"type":"string","description":"Image data URL"}},"required":["groupId","image"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setGroupIcon"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/setAdminsOnly":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Restrict group to admins only","operationId":"setGroupToAdminsOnly","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"onlyAdmins":{"type":"boolean","description":"Admins only setting"}},"required":["groupId","onlyAdmins"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setGroupToAdminsOnly","PUT /api/groups/setToAdminsOnly"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/setEditAdminsOnly":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Restrict group editing to admins only","operationId":"setGroupEditToAdminsOnly","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"onlyAdmins":{"type":"boolean","description":"Admins only setting"}},"required":["groupId","onlyAdmins"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setGroupEditToAdminsOnly","PUT /api/groups/setEditToAdminsOnly"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/addParticipant":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Add participant to group","operationId":"addParticipant","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/addParticipant","PUT /api/addGroupParticipant"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/removeParticipant":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Remove participant from group","operationId":"removeParticipant","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/removeParticipant","PUT /api/removeGroupParticipant"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/groups/promoteParticipant":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Promote participant to admin","operationId":"promoteParticipant","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/promoteParticipant","PUT /api/promoteGroupParticipant"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"boolean"},{"type":"string"}]}}}}}}}}},"/api/groups/demoteParticipant":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Demote participant from admin","operationId":"demoteParticipant","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/demoteParticipant","PUT /api/demoteGroupParticipant"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"boolean"},{"type":"string"}]}}}}}}}}},"/api/groups/approveJoinRequest":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Approve group join request","operationId":"approveGroupJoinRequest","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/approveGroupJoinRequest"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"}]}}}}}}}}},"/api/groups/rejectJoinRequest":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Reject group join request","operationId":"rejectGroupJoinRequest","tags":["groups"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"description":"Group chat ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"},"contactId":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}},"required":["groupId","contactId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/rejectGroupJoinRequest"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string"},{"type":"boolean"}]}}}}}}}}},"/api/communities/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get all communities","operationId":"getAllCommunities","tags":["communities"],"parameters":[],"x-openwa-aliases":["GET /api/getAllCommunities","GET /api/listCommunities","GET /api/communities/all","GET /api/communities/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."}}}}}}}}}},"/api/communities/getInfo":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get community metadata","operationId":"getCommunityInfo","tags":["communities"],"parameters":[{"name":"communityId","in":"query","required":true,"description":"Community ID","schema":{"description":"Community ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getCommunityInfo"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}},"subGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."}}},"required":["id","subject","creation","participants","subGroups"],"additionalProperties":{}}}}}}}}}},"/api/communities/getParticipantIds":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get community participant IDs","operationId":"getCommunityParticipantIds","tags":["communities"],"parameters":[{"name":"communityId","in":"query","required":true,"description":"Community ID","schema":{"description":"Community ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getCommunityParticipantIds"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."},"participants":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"subgroup":{"type":"boolean"}},"required":["id","participants","subgroup"],"additionalProperties":false}}}}}}}}}},"/api/communities/getAdminIds":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get community admin IDs","operationId":"getCommunityAdminIds","tags":["communities"],"parameters":[{"name":"communityId","in":"query","required":true,"description":"Community ID","schema":{"description":"Community ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getCommunityAdminIds"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."},"admins":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"subgroup":{"type":"boolean"}},"required":["id","admins","subgroup"],"additionalProperties":false}}}}}}}}}},"/api/communities/getParticipants":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get community participants","operationId":"getCommunityParticipants","tags":["communities"],"parameters":[{"name":"communityId","in":"query","required":true,"description":"Community ID","schema":{"description":"Community ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getCommunityParticipants"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}},"subgroup":{"type":"boolean"}},"required":["id","participants","subgroup"],"additionalProperties":false}}}}}}}}}},"/api/communities/getAdmins":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get community admins","operationId":"getCommunityAdmins","tags":["communities"],"parameters":[{"name":"communityId","in":"query","required":true,"description":"Community ID","schema":{"description":"Community ID","type":"string","pattern":"^\\d+(-\\d+)?@g\\.us$"}}],"x-openwa-aliases":["GET /api/getCommunityAdmins"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque group conversation identifier returned by a group lookup or join method."},"admins":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}},"subgroup":{"type":"boolean"}},"required":["id","admins","subgroup"],"additionalProperties":false}}}}}}}}}},"/api/status/postText":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Post text status","operationId":"postTextStatus","tags":["status"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"text":{"type":"string","description":"Status text"},"backgroundColor":{"description":"Background color","type":"string"},"font":{"description":"Font style","type":"number"}},"required":["text"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/postTextStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"string"}]},{"type":"boolean"}]}}}}}}}}},"/api/status/postImage":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Post image status","operationId":"postImageStatus","tags":["status"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"image":{"type":"string","description":"Image data URL"},"caption":{"description":"Status caption","type":"string"}},"required":["image"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/postImageStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"string"}]},{"type":"boolean"}]}}}}}}}}},"/api/status/postVideo":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Post video status","operationId":"postVideoStatus","tags":["status"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"video":{"type":"string","description":"Video data URL"},"caption":{"description":"Status caption","type":"string"}},"required":["video"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/postVideoStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"anyOf":[{"type":"string","description":"Message identifier returned by a send method or message event."},{"type":"string"}]},{"type":"boolean"}]}}}}}}}}},"/api/status/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get all stories","operationId":"getStories","tags":["status"],"parameters":[],"x-openwa-aliases":["GET /api/getStories","GET /api/getStatuses","GET /api/status/getStories","GET /api/status/get"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"},"chat":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"sender":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}}},"required":["id","body","type","t","from","to","self","ack","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chatId","isQuotedMsgAvailable"],"additionalProperties":{},"description":"Message-shaped status entry, based on the legacy story API. Chat and sender may be absent or null. The licensed getStories payload has not been verified against this model."}}}}}}}}}},"/api/mystatus/getStatus":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get specific status","operationId":"getStatus","tags":["mystatus"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"}},"required":["id","status"],"additionalProperties":false}}}}}}}}},"/api/status/delete":{"delete":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Delete status","operationId":"deleteStatus","tags":["status"],"parameters":[{"name":"statusesToDelete","in":"query","required":true,"description":"Status ID(s)","schema":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"description":"Status ID(s)"}}],"x-openwa-aliases":["DELETE /api/deleteStatus"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/status/deleteAll":{"delete":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Delete all statuses","operationId":"deleteAllStatus","tags":["status"],"parameters":[],"x-openwa-aliases":["DELETE /api/deleteAllStatus","DELETE /api/deleteAllStatuses"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/labels/getAll":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get all labels","operationId":"getAllLabels","tags":["labels"],"parameters":[],"x-openwa-aliases":["GET /api/getAllLabels","GET /api/listLabels","GET /api/labels/all","GET /api/labels/list"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"items":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["Chat","Contact","Message"]},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false}}},"required":["id","name","items"],"additionalProperties":{}}}}}}}}}}},"/api/labels/getChats":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get chats by label","operationId":"getChatsByLabel","tags":["labels"],"parameters":[{"name":"label","in":"query","required":true,"description":"Label name","schema":{"type":"string","description":"Label name"}}],"x-openwa-aliases":["GET /api/getChatsByLabel","GET /api/labels/getChatsBy"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."}}}}}}}}}},"/api/labels/add":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Add label to chat","operationId":"addLabel","tags":["labels"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string","description":"Label ID or name"},"chatId":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["label","chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/addLabel"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/labels/remove":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Remove label from chat","operationId":"removeLabel","tags":["labels"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string","description":"Label ID or name"},"chatId":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},"required":["label","chatId"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/removeLabel"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/business/getProfile":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get business profile","operationId":"getBusinessProfile","tags":["business"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getBusinessProfile"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"tag":{"type":"string"},"description":{"type":"string"},"categories":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"localized_display_name":{"type":"string"}},"required":["id","localized_display_name"],"additionalProperties":false}},"profileOptions":{"type":"object","properties":{"commerceExperience":{"type":"string","enum":["catalog","none","shop"]},"cartEnabled":{"type":"boolean"}},"required":["commerceExperience","cartEnabled"],"additionalProperties":false},"email":{"type":"string"},"website":{"type":"array","items":{"type":"string"}},"businessHours":{"type":"object","properties":{"config":{"type":"object","additionalProperties":{"type":"object","properties":{"mode":{"type":"string","enum":["specific_hours","open_24h","appointment_only"]},"hours":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"required":["mode","hours"],"additionalProperties":false}},"timezone":{"type":"string"}},"required":["config","timezone"],"additionalProperties":false},"catalogStatus":{"type":"string"},"address":{"type":"string"},"fbPage":{},"igProfessional":{},"isProfileLinked":{"type":"boolean"},"coverPhoto":{"type":"object","properties":{"id":{"type":"string"},"url":{"type":"string"}},"required":["id","url"],"additionalProperties":false},"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["id"],"additionalProperties":{}}}}}}}}}},"/api/business/getProducts":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get business products","operationId":"getBusinessProducts","tags":["business"],"parameters":[{"name":"contactId","in":"query","required":true,"description":"Contact ID","schema":{"description":"Contact ID","type":"string","pattern":"^\\d+@c\\.us$"}}],"x-openwa-aliases":["GET /api/getBusinessProducts","GET /api/getBusinessProfilesProducts","GET /api/business/getProfilesProducts"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"currency":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"isHidden":{"type":"boolean"},"catalogWid":{"type":"string"},"url":{"type":"string"},"availability":{"anyOf":[{"type":"number"},{"type":"string","enum":["unknown"]}]},"reviewStatus":{"type":"string","enum":["NO_REVIEW","PENDING","REJECTED","APPROVED","OUTDATED"]},"imageCdnUrl":{"type":"string"},"imageCount":{"type":"number"},"additionalImageCdnUrl":{"type":"array","items":{"type":"string"}},"priceAmount1000":{"type":"number"},"retailerId":{"type":"string"},"t":{"type":"number"}},"required":["id","currency"],"additionalProperties":{}}},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/business/getOrder":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get order details","operationId":"getOrder","tags":["business"],"parameters":[{"name":"id","in":"query","required":true,"description":"Order or message ID","schema":{"anyOf":[{"description":"Message ID","type":"string","pattern":"^(true|false)_.+_.+$"},{"type":"string"}],"description":"Order or message ID"}}],"x-openwa-aliases":["GET /api/getOrder"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"number"},"currency":{"type":"string"},"products":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"qty":{"type":"number"},"thumbnailId":{"type":"string"},"thumbnailUrl":{"type":"string"}},"required":["id","name","qty","thumbnailId","thumbnailUrl"],"additionalProperties":false}},"sellerJid":{"type":"string"},"subtotal":{"type":"string"},"total":{"type":"string"},"message":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{}}},"required":["id","createdAt","currency","products","sellerJid","subtotal","total"],"additionalProperties":{}}}}}}}}}},"/api/session/getMe":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get host account info","operationId":"getMe","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getMe"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"me":{"anyOf":[{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}]}},"required":["me"],"additionalProperties":{},"description":"Host account attributes plus the current account ID. Additional WhatsApp Web attributes vary by version."}}}}}}}}},"/api/session/getHostNumber":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get host phone number","operationId":"getHostNumber","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getHostNumber"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/session/getConnectionState":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get connection state","operationId":"getConnectionState","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getConnectionState"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/session/getWAVersion":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get WhatsApp Web version","operationId":"getWAVersion","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getWAVersion","GET /api/getWhatsAppVersion","GET /api/session/getWhatsAppVersion"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/session/getBatteryLevel":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get phone battery level","operationId":"getBatteryLevel","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getBatteryLevel"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"number"}}}}}}}}},"/api/session/isPlugged":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Check if phone is charging","operationId":"isPlugged","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/isPlugged","GET /api/getIsPlugged","GET /api/session/getIsPlugged"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/session/getFeatures":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get enabled features","operationId":"getFeatures","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getFeatures"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","additionalProperties":{},"description":"WhatsApp feature flags keyed by name. Values are provider-defined and must be narrowed before use."}}}}}}}}},"/api/session/getLicenseType":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get license type","operationId":"getLicenseType","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getLicenseType"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"anyOf":[{"type":"string","enum":["CUSTOM","B2B_RESTRICTED_VOLUME_LICENSE","Insiders Program","Text Story License Key","Image Story License Key","Video Story License Key","Premium License Key","NONE"]},{"type":"boolean","enum":[false]}]}}}}}}}}},"/api/session/getUserAgent":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get user agent","operationId":"getUserAgent","tags":["session"],"parameters":[{"name":"userAgent","in":"query","required":false,"description":"User agent string","schema":{"description":"User agent string","type":"string"}}],"x-openwa-aliases":["GET /api/getUserAgent","GET /api/getGeneratedUserAgent","GET /api/session/getGeneratedUserAgent"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/session/getProcessStats":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get process statistics","operationId":"getProcessStats","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getProcessStats"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","additionalProperties":{},"description":"Process diagnostics keyed by process ID. The provider controls each entry; no stable entry shape is guaranteed."}}}}}}}}},"/api/session/getLoadedMessageCount":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Get loaded message count","operationId":"getLoadedMessageCount","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/getLoadedMessageCount","GET /api/getAmountOfLoadedMessages","GET /api/session/getAmountOfLoadedMessages"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"number"}}}}}}}}},"/api/session/getSnapshot":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Take screenshot","operationId":"getSnapshot","tags":["session"],"parameters":[{"name":"chatId","in":"query","required":false,"description":"Chat ID (phone number or formatted ID)","schema":{"description":"Chat ID (phone number or formatted ID)","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"}},{"name":"width","in":"query","required":false,"description":"Argument: width","schema":{"type":"number"}},{"name":"height","in":"query","required":false,"description":"Argument: height","schema":{"type":"number"}}],"x-openwa-aliases":["GET /api/getSnapshot","GET /api/takeScreenshot","GET /api/session/takeScreenshot"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/session/healthCheck":{"get":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Health check","operationId":"healthCheck","tags":["session"],"parameters":[],"x-openwa-aliases":["GET /api/healthCheck"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"queuedMessages":{"type":"number"},"state":{"type":"string"},"isPhoneDisconnected":{"type":"boolean"},"isHere":{"type":"boolean"},"wapiInjected":{"type":"boolean"},"online":{"type":"boolean"},"tryingToReachPhone":{"type":"boolean"},"retryingIn":{"type":"number"},"batteryLow":{"type":"boolean"}},"additionalProperties":{},"description":"Browser health diagnostics. This is not the Easy API /health HTTP envelope."}}}}}}}}},"/api/session/setName":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set host name","operationId":"setMyName","tags":["session"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Display name"}},"required":["name"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setMyName","PUT /api/setDisplayName","PUT /api/session/setMyName","PUT /api/session/setDisplayName"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/session/setStatus":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set host status","operationId":"setMyStatus","tags":["session"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"statusText":{"type":"string","description":"Status text"}},"required":["statusText"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setMyStatus","PUT /api/setStatusText","PUT /api/session/setMyStatus","PUT /api/session/setStatusText"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/session/setProfilePicture":{"put":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Set profile picture","operationId":"setProfilePicture","tags":["session"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"image":{"description":"Image file (path, URL, DataURL, or Base64)","type":"string","pattern":"^data:.+;base64,.+$"}},"required":["image"],"additionalProperties":false}}}},"x-openwa-aliases":["PUT /api/setProfilePicture","PUT /api/setProfilePic","PUT /api/session/setProfilePic"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"boolean"}}}}}}}}},"/api/media/decrypt":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Decrypts media from a message","operationId":"decryptMedia","tags":["media"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{},"description":"Message object containing media"}},"required":["message"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/decryptMedia"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string","pattern":"^data:[\\s\\S]{0,};base64,[\\s\\S]{0,}$"}}}}}}}}},"/api/media/download":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Downloads and decrypts media from a message to a file","operationId":"downloadMedia","tags":["media"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"object","properties":{"id":{"type":"string","description":"Message identifier returned by a send method or message event."},"body":{"type":"string"},"type":{"type":"string","enum":["chat","audio","ptt","image","video","document","sticker","location","vcard","multi_vcard","revoked","order","buttons_response","list_response","unknown"]},"t":{"type":"number"},"notifyName":{"type":"string"},"from":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"to":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"self":{"type":"string","enum":["in","out"]},"ack":{"type":"number","enum":[-1,0,1,2,3,4]},"invis":{"type":"boolean"},"isNewMsg":{"type":"boolean"},"star":{"type":"boolean"},"recvFresh":{"type":"boolean"},"broadcast":{"type":"boolean"},"isForwarded":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"mentionedJidList":{"type":"array","items":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."}},"caption":{"type":"string"},"sender":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"timestamp":{"type":"number"},"content":{"type":"string"},"isGroupMsg":{"type":"boolean"},"isMMS":{"type":"boolean"},"isMedia":{"type":"boolean"},"isNotification":{"type":"boolean"},"isPSA":{"type":"boolean"},"fromMe":{"type":"boolean"},"chat":{"type":"object","properties":{"id":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"name":{"type":"string"},"formattedTitle":{"type":"string"},"isGroup":{"type":"boolean"},"contact":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"name":{"type":"string"},"shortName":{"type":"string"},"pushname":{"type":"string"},"formattedName":{"type":"string"},"isBusiness":{"type":"boolean"},"isEnterprise":{"type":"boolean"},"isMe":{"type":"boolean"},"isMyContact":{"type":"boolean"},"isPSA":{"type":"boolean"},"isUser":{"type":"boolean"},"isWAContact":{"type":"boolean"},"labels":{"type":"array","items":{"type":"string"}},"msgs":{"nullable":true,"type":"array","items":{}},"profilePicThumbObj":{"type":"object","properties":{"eurl":{"type":"string"},"id":{"type":"object","properties":{"server":{"type":"string"},"user":{"type":"string"},"_serialized":{"type":"string"}},"required":["server","user","_serialized"],"additionalProperties":false},"img":{"type":"string"},"imgFull":{"type":"string"},"tag":{"type":"string"}},"additionalProperties":false},"statusMute":{"type":"boolean"},"type":{"type":"string"},"verifiedLevel":{"type":"number"},"verifiedName":{"type":"string"},"isOnline":{"type":"boolean"},"lastSeen":{"type":"number"}},"required":["id"],"additionalProperties":{}},"groupMetadata":{"nullable":true,"type":"object","properties":{"id":{"type":"string","description":"Identifier for a WhatsApp group. Use the value returned by the API."},"subject":{"type":"string"},"creation":{"type":"number"},"owner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"desc":{"type":"string"},"descTime":{"type":"number"},"descOwner":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"restrict":{"type":"boolean"},"announce":{"type":"boolean"},"participants":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Opaque WhatsApp contact identifier. Preserve the exact value returned by the API."},"isAdmin":{"type":"boolean"},"isSuperAdmin":{"type":"boolean"}},"required":["id","isAdmin"],"additionalProperties":false}}},"required":["id","subject","creation","participants"],"additionalProperties":{},"description":"Serialized group metadata returned by group lookups. Additional WhatsApp Web fields may be present."},"presence":{"nullable":true,"type":"object","additionalProperties":{}},"t":{"type":"number"},"unreadCount":{"type":"number"},"lastReceivedKey":{},"msgs":{"nullable":true,"type":"array","items":{}},"isReadOnly":{"type":"boolean"},"muteExpiration":{"type":"number"},"notSpam":{"type":"boolean"},"pin":{"type":"number"},"ack":{}},"required":["id","isGroup","contact"],"additionalProperties":{},"description":"Serialized chat returned by chat lookups and listings. Its id is an opaque ChatId; additional WhatsApp Web fields may be present."},"chatId":{"type":"string","description":"Opaque conversation identifier. Use the exact value returned by a message event or chat lookup."},"author":{"type":"string"},"clientUrl":{"type":"string"},"deprecatedMms3Url":{"type":"string"},"isQuotedMsgAvailable":{"type":"boolean"},"quotedMsg":{},"quotedMsgObj":{},"senderId":{"type":"string"}},"required":["id","body","type","t","from","to","self","ack","sender","timestamp","content","isGroupMsg","isMedia","isNotification","fromMe","chat","chatId","isQuotedMsgAvailable"],"additionalProperties":{},"description":"Message object containing media"},"path":{"type":"string","description":"File path to save the media"}},"required":["message","path"],"additionalProperties":false}}}},"x-openwa-aliases":["POST /api/downloadMedia"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string","description":"Path to the saved file"}}}}}}}}},"/api/messages/sendInteractive":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Send a portable interactive message document (Insiders and above)","operationId":"sendInteractive","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"content":{"oneOf":[{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["buttons"]},"header":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["text"]},"text":{"type":"string","minLength":1}},"required":["type","text"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["image"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["video"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["document"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false}]},"actions":{"minItems":1,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["reply"]},"id":{"type":"string","minLength":1,"description":"Stable application-defined ID returned when the recipient chooses this item"},"label":{"type":"string","minLength":1}},"required":["type","id","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["url"]},"label":{"type":"string","minLength":1},"url":{"type":"string","format":"uri"}},"required":["type","label","url"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["call"]},"label":{"type":"string","minLength":1},"phoneNumber":{"type":"string","minLength":1}},"required":["type","label","phoneNumber"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["copy"]},"label":{"type":"string","minLength":1},"code":{"type":"string","minLength":1}},"required":["type","label","code"],"additionalProperties":false}]}}},"required":["body","type","actions"],"additionalProperties":false},{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["list"]},"title":{"type":"string"},"buttonLabel":{"default":"Choose an option","type":"string","minLength":1},"sections":{"minItems":1,"type":"array","items":{"type":"object","properties":{"title":{"type":"string"},"rows":{"minItems":1,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Stable application-defined ID returned when the recipient chooses this item"},"title":{"type":"string","minLength":1},"description":{"type":"string"}},"required":["id","title"],"additionalProperties":false}}},"required":["rows"],"additionalProperties":false}}},"required":["body","type","buttonLabel","sections"],"additionalProperties":false},{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["form"]},"title":{"type":"string"},"questions":{"minItems":1,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["singleSelect","multiSelect"]},"id":{"type":"string","minLength":1,"description":"Stable application-defined ID returned when the recipient chooses this item"},"label":{"type":"string","minLength":1},"options":{"minItems":1,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"description":"Stable application-defined ID returned when the recipient chooses this item"},"label":{"type":"string","minLength":1}},"required":["id","label"],"additionalProperties":false}},"allowCustomAnswer":{"type":"boolean"}},"required":["type","id","label","options"],"additionalProperties":false}}},"required":["body","type","questions"],"additionalProperties":false},{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["carousel"]},"cards":{"minItems":1,"type":"array","items":{"type":"object","properties":{"body":{"type":"string","minLength":1},"header":{"type":"object","properties":{"type":{"type":"string","enum":["image"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false},"actions":{"minItems":1,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["reply"]},"id":{"type":"string","minLength":1,"description":"Stable application-defined ID returned when the recipient chooses this item"},"label":{"type":"string","minLength":1}},"required":["type","id","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["url"]},"label":{"type":"string","minLength":1},"url":{"type":"string","format":"uri"}},"required":["type","label","url"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["call"]},"label":{"type":"string","minLength":1},"phoneNumber":{"type":"string","minLength":1}},"required":["type","label","phoneNumber"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["copy"]},"label":{"type":"string","minLength":1},"code":{"type":"string","minLength":1}},"required":["type","label","code"],"additionalProperties":false}]}}},"required":["body","header","actions"],"additionalProperties":false}}},"required":["body","type","cards"],"additionalProperties":false},{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["booking"]},"title":{"type":"string"},"buttonLabel":{"default":"View booking","type":"string","minLength":1},"booking":{"type":"object","properties":{"startAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"endAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"location":{"type":"string"},"url":{"type":"string","format":"uri"},"managementUrl":{"type":"string","format":"uri"},"phoneNumber":{"type":"string"},"email":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"description":{"type":"string"},"labels":{"type":"object","properties":{"language":{"type":"string"},"meetingType":{"type":"string"},"detailsTitle":{"type":"string"},"addToCalendar":{"type":"string"},"viewOnMap":{"type":"string"},"manageBooking":{"type":"string"}},"additionalProperties":false}},"required":["startAt"],"additionalProperties":false},"actions":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["url"]},"label":{"type":"string","minLength":1},"url":{"type":"string","format":"uri"}},"required":["type","label","url"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["call"]},"label":{"type":"string","minLength":1},"phoneNumber":{"type":"string","minLength":1}},"required":["type","label","phoneNumber"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["copy"]},"label":{"type":"string","minLength":1},"code":{"type":"string","minLength":1}},"required":["type","label","code"],"additionalProperties":false}]}}},"required":["body","type","buttonLabel","booking"],"additionalProperties":false},{"type":"object","properties":{"version":{"description":"Document format version, defaults to 1; independent of WhatsApp protocol versions","type":"number","enum":[1]},"body":{"type":"string","minLength":1},"footer":{"type":"string"},"type":{"type":"string","enum":["native"]},"header":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["text"]},"text":{"type":"string","minLength":1}},"required":["type","text"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["image"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["video"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["document"]},"source":{"type":"string","minLength":1,"description":"HTTP(S) URL, local file path or base64 data URL; resolved by the client before sending"},"filename":{"type":"string","minLength":1},"title":{"type":"string"}},"required":["type","source"],"additionalProperties":false}]},"actions":{"minItems":1,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"description":"WhatsApp native action name; availability depends on the recipient and account"},"parameters":{"type":"object","additionalProperties":{"$ref":"#/definitions/__schema0"}}},"required":["name"],"additionalProperties":false}},"parameters":{"type":"object","additionalProperties":{"$ref":"#/definitions/__schema0"}}},"required":["body","type","actions"],"additionalProperties":false,"description":"Advanced extension for new native action types; parameters are passed through without claiming recipient support"}]}},"required":["to","content"],"additionalProperties":false,"definitions":{"__schema0":{"anyOf":[{"type":"string","nullable":true,"enum":[null]},{"type":"boolean"},{"type":"number"},{"type":"string"},{"type":"array","items":{"$ref":"#/definitions/__schema0"}},{"type":"object","additionalProperties":{"$ref":"#/definitions/__schema0"}}]}}}}}},"x-openwa-aliases":["POST /api/sendInteractive"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}},"/api/messages/sendRaw":{"post":{"400":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["error","details"],"properties":{"error":{"type":"string","enum":["Validation Error"]},"details":{"type":"array","items":{"type":"object","required":["code","path","message"],"properties":{"code":{"type":"string"},"path":{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"integer"}]}},"message":{"type":"string"}},"additionalProperties":true}}},"additionalProperties":false},"examples":{"validationError":{"summary":"Input validation failed","value":{"error":"Validation Error","details":[{"code":"invalid_type","path":["to"],"message":"Invalid input"}]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string"}},"additionalProperties":false},"examples":{"internalError":{"summary":"Execution failed","value":{"error":"Internal Server Error"}}}}}},"summary":"Send a constructed WhatsApp protobuf Message payload (Insiders and above); media must already be uploaded","operationId":"sendRawMessage","tags":["messages"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"Recipient chat ID","type":"string","pattern":"^\\d+(-\\d+)?@(c|g)\\.us$|^\\d+@lid$"},"payload":{"type":"object","additionalProperties":{"$ref":"#/definitions/__schema0"}}},"required":["to","payload"],"additionalProperties":false,"definitions":{"__schema0":{"anyOf":[{"type":"string","nullable":true,"enum":[null]},{"type":"boolean"},{"type":"number"},{"type":"string"},{"type":"array","items":{"$ref":"#/definitions/__schema0"}},{"type":"object","additionalProperties":{"$ref":"#/definitions/__schema0"}}]}}}}}},"x-openwa-aliases":["POST /api/sendRawMessage"],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"string"}}}}}}}}}}}