@zapyapi/sdk 1.0.0-beta.6 → 1.0.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +80 -18
- package/index.cjs +865 -139
- package/index.js +865 -130
- package/package.json +1 -2
- package/src/client.d.ts +1 -1
- package/src/index.d.ts +11 -7
- package/src/index.d.ts.map +1 -1
- package/src/types/enums.d.ts +6 -89
- package/src/types/enums.d.ts.map +1 -1
- package/src/types/events/instance-status.d.ts +3 -13
- package/src/types/events/instance-status.d.ts.map +1 -1
- package/src/types/events/presence.d.ts +3 -16
- package/src/types/events/presence.d.ts.map +1 -1
- package/src/types/events/reaction.d.ts +3 -16
- package/src/types/events/reaction.d.ts.map +1 -1
- package/src/types/index.d.ts +4 -6
- package/src/types/index.d.ts.map +1 -1
- package/src/types/message-events.types.d.ts +39 -39
- package/src/types/message-events.types.d.ts.map +1 -1
- package/src/version.d.ts +1 -1
- package/src/types/webhook-events.types.d.ts +0 -257
- package/src/types/webhook-events.types.d.ts.map +0 -1
package/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
|
|
3
3
|
/** SDK version - auto-generated from package.json */
|
|
4
|
-
const SDK_VERSION = '1.0.0-beta.
|
|
4
|
+
const SDK_VERSION = '1.0.0-beta.8';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Custom error classes for @zapyapi/sdk
|
|
@@ -1199,7 +1199,7 @@ class InstancesResource extends BaseResource {
|
|
|
1199
1199
|
*
|
|
1200
1200
|
* @example
|
|
1201
1201
|
* ```typescript
|
|
1202
|
-
* import { ZapyClient,
|
|
1202
|
+
* import { ZapyClient, ZapyEventTypes, isTextMessage } from '@zapyapi/sdk';
|
|
1203
1203
|
*
|
|
1204
1204
|
* const client = new ZapyClient({
|
|
1205
1205
|
* apiKey: 'your-api-key',
|
|
@@ -1309,44 +1309,21 @@ function createClient(options) {
|
|
|
1309
1309
|
/**
|
|
1310
1310
|
* SDK Enums - Type-safe enums for ZapyAPI SDK
|
|
1311
1311
|
*
|
|
1312
|
-
* These enums can be imported and used for type-safe comparisons and
|
|
1313
|
-
* webhook event handling.
|
|
1314
|
-
*
|
|
1315
1312
|
* @example
|
|
1316
1313
|
* ```typescript
|
|
1317
|
-
* import {
|
|
1318
|
-
*
|
|
1319
|
-
* // Type-safe event handling
|
|
1320
|
-
* if (event.event === WebhookEventType.MESSAGE) {
|
|
1321
|
-
* // Handle message event
|
|
1322
|
-
* }
|
|
1314
|
+
* import { InstanceStatus, ZapyEventTypes, ZapyMessageType } from '@zapyapi/sdk';
|
|
1323
1315
|
*
|
|
1324
1316
|
* // Check instance status
|
|
1325
1317
|
* if (instance.status === InstanceStatus.CONNECTED) {
|
|
1326
1318
|
* // Instance is ready
|
|
1327
1319
|
* }
|
|
1320
|
+
*
|
|
1321
|
+
* // Handle webhook events
|
|
1322
|
+
* if (payload.event === ZapyEventTypes.MESSAGE) {
|
|
1323
|
+
* // Handle message
|
|
1324
|
+
* }
|
|
1328
1325
|
* ```
|
|
1329
1326
|
*/
|
|
1330
|
-
/**
|
|
1331
|
-
* Webhook event types sent by ZapyAPI
|
|
1332
|
-
* These are the event types you'll receive in webhook payloads
|
|
1333
|
-
*/
|
|
1334
|
-
const WebhookEventType = {
|
|
1335
|
-
/** New message received */
|
|
1336
|
-
MESSAGE: 'message',
|
|
1337
|
-
/** Message delivery status update */
|
|
1338
|
-
MESSAGE_STATUS: 'message-status',
|
|
1339
|
-
/** QR code generated for authentication */
|
|
1340
|
-
QR_CODE: 'qr-code',
|
|
1341
|
-
/** New contact discovered */
|
|
1342
|
-
CONTACT_CREATED: 'contact-created',
|
|
1343
|
-
/** Contact information updated */
|
|
1344
|
-
CONTACT_UPDATED: 'contact-updated',
|
|
1345
|
-
/** Duplicate contacts merged */
|
|
1346
|
-
CONTACT_DEDUPLICATED: 'contact-deduplicated',
|
|
1347
|
-
/** Instance status changed (connected, disconnected, etc.) */
|
|
1348
|
-
INSTANCE_STATUS: 'instance-status'
|
|
1349
|
-
};
|
|
1350
1327
|
/**
|
|
1351
1328
|
* Instance status values
|
|
1352
1329
|
* Represents the current state of a WhatsApp instance
|
|
@@ -1371,48 +1348,6 @@ const InstanceStatus = {
|
|
|
1371
1348
|
/** Payment pending for this instance */
|
|
1372
1349
|
PAYMENT_PENDING: 'payment_pending'
|
|
1373
1350
|
};
|
|
1374
|
-
/**
|
|
1375
|
-
* Message acknowledgment status
|
|
1376
|
-
* Represents the delivery status of a sent message
|
|
1377
|
-
*/
|
|
1378
|
-
const MessageAckStatus = {
|
|
1379
|
-
/** Message is pending to be sent */
|
|
1380
|
-
PENDING: 'pending',
|
|
1381
|
-
/** Message was sent to server */
|
|
1382
|
-
SENT: 'sent',
|
|
1383
|
-
/** Message was delivered to recipient */
|
|
1384
|
-
DELIVERED: 'delivered',
|
|
1385
|
-
/** Message was read by recipient */
|
|
1386
|
-
READ: 'read',
|
|
1387
|
-
/** Audio/video message was played */
|
|
1388
|
-
PLAYED: 'played'
|
|
1389
|
-
};
|
|
1390
|
-
/**
|
|
1391
|
-
* Message types for incoming messages
|
|
1392
|
-
* Identifies the type of content in a received message
|
|
1393
|
-
*/
|
|
1394
|
-
const MessageType = {
|
|
1395
|
-
/** Text message */
|
|
1396
|
-
TEXT: 'text',
|
|
1397
|
-
/** Image message */
|
|
1398
|
-
IMAGE: 'image',
|
|
1399
|
-
/** Video message */
|
|
1400
|
-
VIDEO: 'video',
|
|
1401
|
-
/** Audio message (voice note or file) */
|
|
1402
|
-
AUDIO: 'audio',
|
|
1403
|
-
/** Document/file message */
|
|
1404
|
-
DOCUMENT: 'document',
|
|
1405
|
-
/** Sticker message */
|
|
1406
|
-
STICKER: 'sticker',
|
|
1407
|
-
/** Location message */
|
|
1408
|
-
LOCATION: 'location',
|
|
1409
|
-
/** Contact card message */
|
|
1410
|
-
CONTACT: 'contact',
|
|
1411
|
-
/** Poll message */
|
|
1412
|
-
POLL: 'poll',
|
|
1413
|
-
/** Reaction message */
|
|
1414
|
-
REACTION: 'reaction'
|
|
1415
|
-
};
|
|
1416
1351
|
/**
|
|
1417
1352
|
* Webhook queue item status
|
|
1418
1353
|
* Used for monitoring webhook delivery status
|
|
@@ -1429,49 +1364,6 @@ const WebhookQueueStatus = {
|
|
|
1429
1364
|
/** Webhook delivery is paused due to repeated failures */
|
|
1430
1365
|
PAUSED: 'paused'
|
|
1431
1366
|
};
|
|
1432
|
-
/**
|
|
1433
|
-
* Connection status for webhook events
|
|
1434
|
-
* Sent in connection.update webhook events
|
|
1435
|
-
*/
|
|
1436
|
-
const ConnectionStatus = {
|
|
1437
|
-
/** Instance is connecting */
|
|
1438
|
-
CONNECTING: 'connecting',
|
|
1439
|
-
/** Instance is connected */
|
|
1440
|
-
CONNECTED: 'connected',
|
|
1441
|
-
/** Instance disconnected */
|
|
1442
|
-
DISCONNECTED: 'disconnected',
|
|
1443
|
-
/** Connection error occurred */
|
|
1444
|
-
ERROR: 'error'
|
|
1445
|
-
};
|
|
1446
|
-
|
|
1447
|
-
/**
|
|
1448
|
-
* Webhook event type definitions
|
|
1449
|
-
* Types for webhook payloads sent by ZapyAPI
|
|
1450
|
-
*/
|
|
1451
|
-
/** Type guard for message events */
|
|
1452
|
-
function isMessageEvent(event) {
|
|
1453
|
-
return event.event === 'message';
|
|
1454
|
-
}
|
|
1455
|
-
/** Type guard for message status events */
|
|
1456
|
-
function isMessageStatusEvent(event) {
|
|
1457
|
-
return event.event === 'message-status';
|
|
1458
|
-
}
|
|
1459
|
-
/** Type guard for QR code events */
|
|
1460
|
-
function isQRCodeEvent(event) {
|
|
1461
|
-
return event.event === 'qr-code';
|
|
1462
|
-
}
|
|
1463
|
-
/** Type guard for contact created events */
|
|
1464
|
-
function isContactCreatedEvent(event) {
|
|
1465
|
-
return event.event === 'contact-created';
|
|
1466
|
-
}
|
|
1467
|
-
/** Type guard for contact updated events */
|
|
1468
|
-
function isContactUpdatedEvent(event) {
|
|
1469
|
-
return event.event === 'contact-updated';
|
|
1470
|
-
}
|
|
1471
|
-
/** Type guard for contact deduplicated events */
|
|
1472
|
-
function isContactDeduplicatedEvent(event) {
|
|
1473
|
-
return event.event === 'contact-deduplicated';
|
|
1474
|
-
}
|
|
1475
1367
|
|
|
1476
1368
|
/**
|
|
1477
1369
|
* WhatsApp Message Event Types
|
|
@@ -1564,19 +1456,6 @@ function isMediaMessage(message) {
|
|
|
1564
1456
|
return [ZapyMessageType.IMAGE, ZapyMessageType.VIDEO, ZapyMessageType.AUDIO, ZapyMessageType.DOCUMENT, ZapyMessageType.STICKER].includes(message.messageType);
|
|
1565
1457
|
}
|
|
1566
1458
|
|
|
1567
|
-
var WhatsappInstanceStatus;
|
|
1568
|
-
(function (WhatsappInstanceStatus) {
|
|
1569
|
-
WhatsappInstanceStatus["STOPPED"] = "stopped";
|
|
1570
|
-
WhatsappInstanceStatus["MANUALLY_STOPPED"] = "manually_stopped";
|
|
1571
|
-
WhatsappInstanceStatus["CONNECTING"] = "connecting";
|
|
1572
|
-
WhatsappInstanceStatus["PENDING_QR_CODE_SCAN"] = "pending_qr_code_scan";
|
|
1573
|
-
WhatsappInstanceStatus["CONNECTED"] = "connected";
|
|
1574
|
-
WhatsappInstanceStatus["ERROR"] = "error";
|
|
1575
|
-
WhatsappInstanceStatus["CREATED"] = "created";
|
|
1576
|
-
WhatsappInstanceStatus["QR_TIMEOUT"] = "qr_timeout";
|
|
1577
|
-
WhatsappInstanceStatus["PAYMENT_PENDING"] = "payment_pending";
|
|
1578
|
-
})(WhatsappInstanceStatus || (WhatsappInstanceStatus = {}));
|
|
1579
|
-
|
|
1580
1459
|
// Re-export all event types
|
|
1581
1460
|
/**
|
|
1582
1461
|
* Event type constants for type-safe event handling
|
|
@@ -1768,4 +1647,860 @@ function verifySignatureWithCrypto(crypto, payload, signature, secret) {
|
|
|
1768
1647
|
return crypto.timingSafeEqual(Buffer.from(signature, 'utf8'), Buffer.from(expectedSignature, 'utf8'));
|
|
1769
1648
|
}
|
|
1770
1649
|
|
|
1771
|
-
|
|
1650
|
+
/* eslint-disable */
|
|
1651
|
+
/* tslint:disable */
|
|
1652
|
+
// @ts-nocheck
|
|
1653
|
+
/*
|
|
1654
|
+
* ---------------------------------------------------------------
|
|
1655
|
+
* ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
|
|
1656
|
+
* ## ##
|
|
1657
|
+
* ## AUTHOR: acacode ##
|
|
1658
|
+
* ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
|
|
1659
|
+
* ---------------------------------------------------------------
|
|
1660
|
+
*/
|
|
1661
|
+
var ContentType;
|
|
1662
|
+
(function (ContentType) {
|
|
1663
|
+
ContentType["Json"] = "application/json";
|
|
1664
|
+
ContentType["JsonApi"] = "application/vnd.api+json";
|
|
1665
|
+
ContentType["FormData"] = "multipart/form-data";
|
|
1666
|
+
ContentType["UrlEncoded"] = "application/x-www-form-urlencoded";
|
|
1667
|
+
ContentType["Text"] = "text/plain";
|
|
1668
|
+
})(ContentType || (ContentType = {}));
|
|
1669
|
+
class HttpClient {
|
|
1670
|
+
instance;
|
|
1671
|
+
securityData = null;
|
|
1672
|
+
securityWorker;
|
|
1673
|
+
secure;
|
|
1674
|
+
format;
|
|
1675
|
+
constructor({
|
|
1676
|
+
securityWorker,
|
|
1677
|
+
secure,
|
|
1678
|
+
format,
|
|
1679
|
+
...axiosConfig
|
|
1680
|
+
} = {}) {
|
|
1681
|
+
this.instance = axios.create({
|
|
1682
|
+
...axiosConfig,
|
|
1683
|
+
baseURL: axiosConfig.baseURL || ""
|
|
1684
|
+
});
|
|
1685
|
+
this.secure = secure;
|
|
1686
|
+
this.format = format;
|
|
1687
|
+
this.securityWorker = securityWorker;
|
|
1688
|
+
}
|
|
1689
|
+
setSecurityData = data => {
|
|
1690
|
+
this.securityData = data;
|
|
1691
|
+
};
|
|
1692
|
+
mergeRequestParams(params1, params2) {
|
|
1693
|
+
const method = params1.method || params2 && params2.method;
|
|
1694
|
+
return {
|
|
1695
|
+
...this.instance.defaults,
|
|
1696
|
+
...params1,
|
|
1697
|
+
...(params2 || {}),
|
|
1698
|
+
headers: {
|
|
1699
|
+
...(method && this.instance.defaults.headers[method.toLowerCase()] || {}),
|
|
1700
|
+
...(params1.headers || {}),
|
|
1701
|
+
...(params2 && params2.headers || {})
|
|
1702
|
+
}
|
|
1703
|
+
};
|
|
1704
|
+
}
|
|
1705
|
+
stringifyFormItem(formItem) {
|
|
1706
|
+
if (typeof formItem === "object" && formItem !== null) {
|
|
1707
|
+
return JSON.stringify(formItem);
|
|
1708
|
+
} else {
|
|
1709
|
+
return `${formItem}`;
|
|
1710
|
+
}
|
|
1711
|
+
}
|
|
1712
|
+
createFormData(input) {
|
|
1713
|
+
if (input instanceof FormData) {
|
|
1714
|
+
return input;
|
|
1715
|
+
}
|
|
1716
|
+
return Object.keys(input || {}).reduce((formData, key) => {
|
|
1717
|
+
const property = input[key];
|
|
1718
|
+
const propertyContent = property instanceof Array ? property : [property];
|
|
1719
|
+
for (const formItem of propertyContent) {
|
|
1720
|
+
const isFileType = formItem instanceof Blob || formItem instanceof File;
|
|
1721
|
+
formData.append(key, isFileType ? formItem : this.stringifyFormItem(formItem));
|
|
1722
|
+
}
|
|
1723
|
+
return formData;
|
|
1724
|
+
}, new FormData());
|
|
1725
|
+
}
|
|
1726
|
+
request = async ({
|
|
1727
|
+
secure,
|
|
1728
|
+
path,
|
|
1729
|
+
type,
|
|
1730
|
+
query,
|
|
1731
|
+
format,
|
|
1732
|
+
body,
|
|
1733
|
+
...params
|
|
1734
|
+
}) => {
|
|
1735
|
+
const secureParams = (typeof secure === "boolean" ? secure : this.secure) && this.securityWorker && (await this.securityWorker(this.securityData)) || {};
|
|
1736
|
+
const requestParams = this.mergeRequestParams(params, secureParams);
|
|
1737
|
+
const responseFormat = format || this.format || undefined;
|
|
1738
|
+
if (type === ContentType.FormData && body && body !== null && typeof body === "object") {
|
|
1739
|
+
body = this.createFormData(body);
|
|
1740
|
+
}
|
|
1741
|
+
if (type === ContentType.Text && body && body !== null && typeof body !== "string") {
|
|
1742
|
+
body = JSON.stringify(body);
|
|
1743
|
+
}
|
|
1744
|
+
return this.instance.request({
|
|
1745
|
+
...requestParams,
|
|
1746
|
+
headers: {
|
|
1747
|
+
...(requestParams.headers || {}),
|
|
1748
|
+
...(type ? {
|
|
1749
|
+
"Content-Type": type
|
|
1750
|
+
} : {})
|
|
1751
|
+
},
|
|
1752
|
+
params: query,
|
|
1753
|
+
responseType: responseFormat,
|
|
1754
|
+
data: body,
|
|
1755
|
+
url: path
|
|
1756
|
+
});
|
|
1757
|
+
};
|
|
1758
|
+
}
|
|
1759
|
+
/**
|
|
1760
|
+
* @title Zapy API - Gerenciador de Instâncias WhatsApp
|
|
1761
|
+
* @version 1.0.0
|
|
1762
|
+
* @contact Suporte Zapy API <contato@zapyapi.com> (http://app.zapyapi.com/)
|
|
1763
|
+
*
|
|
1764
|
+
*
|
|
1765
|
+
* Formatos de Mensagem
|
|
1766
|
+
* - Números de Telefone: Formato brasileiro (11999999999) ou internacional (5511999999999)
|
|
1767
|
+
* - IDs do WhatsApp: Pessoal (@c.us), Grupos (@g.us), LIDs (@lid)
|
|
1768
|
+
* - Mídia: Arquivos codificados em Base64 ou URLs públicas
|
|
1769
|
+
*
|
|
1770
|
+
* Suporte
|
|
1771
|
+
* Para suporte técnico e documentação, visite nosso site.
|
|
1772
|
+
* https://app.zapyapi.com/
|
|
1773
|
+
*
|
|
1774
|
+
*/
|
|
1775
|
+
class Api extends HttpClient {
|
|
1776
|
+
instances = {
|
|
1777
|
+
/**
|
|
1778
|
+
* @description Lista todas as instâncias do WhatsApp
|
|
1779
|
+
*
|
|
1780
|
+
* @tags Instâncias
|
|
1781
|
+
* @name ManagerInstancesControllerListInstances
|
|
1782
|
+
* @summary Listar Instâncias
|
|
1783
|
+
* @request GET:/api/instances
|
|
1784
|
+
* @secure
|
|
1785
|
+
* @response `200` `(ResponsePaginated & {
|
|
1786
|
+
data?: (ListInstancesResponseDto)[],
|
|
1787
|
+
})` Lista paginada de instâncias obtida com sucesso
|
|
1788
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1789
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
1790
|
+
*/
|
|
1791
|
+
managerInstancesControllerListInstances: (query, params = {}) => this.request({
|
|
1792
|
+
path: `/api/instances`,
|
|
1793
|
+
method: "GET",
|
|
1794
|
+
query: query,
|
|
1795
|
+
secure: true,
|
|
1796
|
+
format: "json",
|
|
1797
|
+
...params
|
|
1798
|
+
}),
|
|
1799
|
+
/**
|
|
1800
|
+
* No description
|
|
1801
|
+
*
|
|
1802
|
+
* @tags Instâncias
|
|
1803
|
+
* @name ManagerInstancesControllerCreateInstance
|
|
1804
|
+
* @summary Create a new WhatsApp instance (Partner only - post-paid subscriptions required)
|
|
1805
|
+
* @request POST:/api/instances
|
|
1806
|
+
* @secure
|
|
1807
|
+
* @response `201` `ManagerInstanceResponseDto` Instance created successfully
|
|
1808
|
+
* @response `400` `void` Bad request
|
|
1809
|
+
*/
|
|
1810
|
+
managerInstancesControllerCreateInstance: (data, params = {}) => this.request({
|
|
1811
|
+
path: `/api/instances`,
|
|
1812
|
+
method: "POST",
|
|
1813
|
+
body: data,
|
|
1814
|
+
secure: true,
|
|
1815
|
+
type: ContentType.Json,
|
|
1816
|
+
format: "json",
|
|
1817
|
+
...params
|
|
1818
|
+
}),
|
|
1819
|
+
/**
|
|
1820
|
+
* @description Obtém o código QR para conectar a instância do WhatsApp
|
|
1821
|
+
*
|
|
1822
|
+
* @tags Instâncias
|
|
1823
|
+
* @name ManagerInstancesControllerGetQrCode
|
|
1824
|
+
* @summary Obter Código QR
|
|
1825
|
+
* @request GET:/api/instances/{instanceId}/qr
|
|
1826
|
+
* @secure
|
|
1827
|
+
* @response `200` `QRCodeResponseDto` Código QR obtido com sucesso
|
|
1828
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1829
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1830
|
+
*/
|
|
1831
|
+
managerInstancesControllerGetQrCode: ({
|
|
1832
|
+
instanceId,
|
|
1833
|
+
...query
|
|
1834
|
+
}, params = {}) => this.request({
|
|
1835
|
+
path: `/api/instances/${instanceId}/qr`,
|
|
1836
|
+
method: "GET",
|
|
1837
|
+
secure: true,
|
|
1838
|
+
format: "json",
|
|
1839
|
+
...params
|
|
1840
|
+
}),
|
|
1841
|
+
/**
|
|
1842
|
+
* @description Reinicia uma instância do WhatsApp
|
|
1843
|
+
*
|
|
1844
|
+
* @tags Instâncias
|
|
1845
|
+
* @name ManagerInstancesControllerRestartInstance
|
|
1846
|
+
* @summary Reiniciar Instância do WhatsApp
|
|
1847
|
+
* @request POST:/api/instances/{instanceId}/restart
|
|
1848
|
+
* @secure
|
|
1849
|
+
* @response `200` `EmptyResponseDto` Instância reiniciada com sucesso
|
|
1850
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1851
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1852
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1853
|
+
*/
|
|
1854
|
+
managerInstancesControllerRestartInstance: ({
|
|
1855
|
+
instanceId,
|
|
1856
|
+
...query
|
|
1857
|
+
}, params = {}) => this.request({
|
|
1858
|
+
path: `/api/instances/${instanceId}/restart`,
|
|
1859
|
+
method: "POST",
|
|
1860
|
+
secure: true,
|
|
1861
|
+
format: "json",
|
|
1862
|
+
...params
|
|
1863
|
+
}),
|
|
1864
|
+
/**
|
|
1865
|
+
* @description Desloga uma instância do WhatsApp
|
|
1866
|
+
*
|
|
1867
|
+
* @tags Instâncias
|
|
1868
|
+
* @name ManagerInstancesControllerLogoutInstance
|
|
1869
|
+
* @summary Deslogar Instância do WhatsApp
|
|
1870
|
+
* @request POST:/api/instances/{instanceId}/logout
|
|
1871
|
+
* @secure
|
|
1872
|
+
* @response `200` `EmptyResponseDto` Instância deslogada com sucesso
|
|
1873
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1874
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1875
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1876
|
+
*/
|
|
1877
|
+
managerInstancesControllerLogoutInstance: ({
|
|
1878
|
+
instanceId,
|
|
1879
|
+
...query
|
|
1880
|
+
}, params = {}) => this.request({
|
|
1881
|
+
path: `/api/instances/${instanceId}/logout`,
|
|
1882
|
+
method: "POST",
|
|
1883
|
+
secure: true,
|
|
1884
|
+
format: "json",
|
|
1885
|
+
...params
|
|
1886
|
+
}),
|
|
1887
|
+
/**
|
|
1888
|
+
* @description Exclui permanentemente uma instância do WhatsApp. Esta ação é irreversível.
|
|
1889
|
+
*
|
|
1890
|
+
* @tags Instâncias
|
|
1891
|
+
* @name ManagerInstancesControllerDeleteInstance
|
|
1892
|
+
* @summary Excluir Instância do WhatsApp (Somente Parceiros)
|
|
1893
|
+
* @request DELETE:/api/instances/{instanceId}
|
|
1894
|
+
* @secure
|
|
1895
|
+
* @response `204` `void` Instância excluída com sucesso
|
|
1896
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1897
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1898
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1899
|
+
*/
|
|
1900
|
+
managerInstancesControllerDeleteInstance: ({
|
|
1901
|
+
instanceId,
|
|
1902
|
+
...query
|
|
1903
|
+
}, params = {}) => this.request({
|
|
1904
|
+
path: `/api/instances/${instanceId}`,
|
|
1905
|
+
method: "DELETE",
|
|
1906
|
+
secure: true,
|
|
1907
|
+
...params
|
|
1908
|
+
}),
|
|
1909
|
+
/**
|
|
1910
|
+
* @description Verifica se uma lista de números de telefone está registrada no WhatsApp
|
|
1911
|
+
*
|
|
1912
|
+
* @tags Instâncias
|
|
1913
|
+
* @name ManagerInstancesControllerCheckNumbers
|
|
1914
|
+
* @summary Verificar Números no WhatsApp
|
|
1915
|
+
* @request POST:/api/instances/{instanceId}/check-numbers
|
|
1916
|
+
* @secure
|
|
1917
|
+
* @response `200` `CheckNumbersResponseDto` Números verificados com sucesso
|
|
1918
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1919
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1920
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1921
|
+
*/
|
|
1922
|
+
managerInstancesControllerCheckNumbers: ({
|
|
1923
|
+
instanceId,
|
|
1924
|
+
...query
|
|
1925
|
+
}, data, params = {}) => this.request({
|
|
1926
|
+
path: `/api/instances/${instanceId}/check-numbers`,
|
|
1927
|
+
method: "POST",
|
|
1928
|
+
body: data,
|
|
1929
|
+
secure: true,
|
|
1930
|
+
type: ContentType.Json,
|
|
1931
|
+
format: "json",
|
|
1932
|
+
...params
|
|
1933
|
+
}),
|
|
1934
|
+
/**
|
|
1935
|
+
* @description Envia um indicador de presença (digitando, gravando, online, etc.) para um contato
|
|
1936
|
+
*
|
|
1937
|
+
* @tags Instâncias
|
|
1938
|
+
* @name ManagerInstancesControllerSendPresence
|
|
1939
|
+
* @summary Enviar Indicador de Presença
|
|
1940
|
+
* @request POST:/api/instances/{instanceId}/presence
|
|
1941
|
+
* @secure
|
|
1942
|
+
* @response `204` `void` Presença enviada com sucesso
|
|
1943
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1944
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1945
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1946
|
+
*/
|
|
1947
|
+
managerInstancesControllerSendPresence: ({
|
|
1948
|
+
instanceId,
|
|
1949
|
+
...query
|
|
1950
|
+
}, data, params = {}) => this.request({
|
|
1951
|
+
path: `/api/instances/${instanceId}/presence`,
|
|
1952
|
+
method: "POST",
|
|
1953
|
+
body: data,
|
|
1954
|
+
secure: true,
|
|
1955
|
+
type: ContentType.Json,
|
|
1956
|
+
...params
|
|
1957
|
+
}),
|
|
1958
|
+
/**
|
|
1959
|
+
* @description Obtém a URL da foto de perfil de um contato
|
|
1960
|
+
*
|
|
1961
|
+
* @tags Instâncias
|
|
1962
|
+
* @name ManagerInstancesControllerGetProfilePicture
|
|
1963
|
+
* @summary Obter Foto de Perfil
|
|
1964
|
+
* @request GET:/api/instances/{instanceId}/contacts/{phone}/profile-picture
|
|
1965
|
+
* @secure
|
|
1966
|
+
* @response `200` `void` Foto de perfil obtida com sucesso
|
|
1967
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1968
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1969
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1970
|
+
*/
|
|
1971
|
+
managerInstancesControllerGetProfilePicture: ({
|
|
1972
|
+
instanceId,
|
|
1973
|
+
phone,
|
|
1974
|
+
...query
|
|
1975
|
+
}, params = {}) => this.request({
|
|
1976
|
+
path: `/api/instances/${instanceId}/contacts/${phone}/profile-picture`,
|
|
1977
|
+
method: "GET",
|
|
1978
|
+
secure: true,
|
|
1979
|
+
...params
|
|
1980
|
+
}),
|
|
1981
|
+
/**
|
|
1982
|
+
* @description Bloqueia um contato no WhatsApp
|
|
1983
|
+
*
|
|
1984
|
+
* @tags Instâncias
|
|
1985
|
+
* @name ManagerInstancesControllerBlockContact
|
|
1986
|
+
* @summary Bloquear Contato
|
|
1987
|
+
* @request POST:/api/instances/{instanceId}/contacts/{phone}/block
|
|
1988
|
+
* @secure
|
|
1989
|
+
* @response `204` `void` Contato bloqueado com sucesso
|
|
1990
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
1991
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
1992
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
1993
|
+
*/
|
|
1994
|
+
managerInstancesControllerBlockContact: ({
|
|
1995
|
+
instanceId,
|
|
1996
|
+
phone,
|
|
1997
|
+
...query
|
|
1998
|
+
}, params = {}) => this.request({
|
|
1999
|
+
path: `/api/instances/${instanceId}/contacts/${phone}/block`,
|
|
2000
|
+
method: "POST",
|
|
2001
|
+
secure: true,
|
|
2002
|
+
...params
|
|
2003
|
+
}),
|
|
2004
|
+
/**
|
|
2005
|
+
* @description Desbloqueia um contato no WhatsApp
|
|
2006
|
+
*
|
|
2007
|
+
* @tags Instâncias
|
|
2008
|
+
* @name ManagerInstancesControllerUnblockContact
|
|
2009
|
+
* @summary Desbloquear Contato
|
|
2010
|
+
* @request DELETE:/api/instances/{instanceId}/contacts/{phone}/block
|
|
2011
|
+
* @secure
|
|
2012
|
+
* @response `204` `void` Contato desbloqueado com sucesso
|
|
2013
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
2014
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
2015
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
2016
|
+
*/
|
|
2017
|
+
managerInstancesControllerUnblockContact: ({
|
|
2018
|
+
instanceId,
|
|
2019
|
+
phone,
|
|
2020
|
+
...query
|
|
2021
|
+
}, params = {}) => this.request({
|
|
2022
|
+
path: `/api/instances/${instanceId}/contacts/${phone}/block`,
|
|
2023
|
+
method: "DELETE",
|
|
2024
|
+
secure: true,
|
|
2025
|
+
...params
|
|
2026
|
+
}),
|
|
2027
|
+
/**
|
|
2028
|
+
* @description Obtém informações detalhadas sobre um grupo do WhatsApp
|
|
2029
|
+
*
|
|
2030
|
+
* @tags Instâncias
|
|
2031
|
+
* @name ManagerInstancesControllerGetGroupMetadata
|
|
2032
|
+
* @summary Obter Metadados do Grupo
|
|
2033
|
+
* @request GET:/api/instances/{instanceId}/groups/{groupId}
|
|
2034
|
+
* @secure
|
|
2035
|
+
* @response `200` `void` Metadados do grupo obtidos com sucesso
|
|
2036
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
2037
|
+
* @response `403` `ForbiddenErrorDto` Acesso negado - Sem acesso ao recurso
|
|
2038
|
+
* @response `404` `NotFoundErrorDto` Recurso não encontrado
|
|
2039
|
+
*/
|
|
2040
|
+
managerInstancesControllerGetGroupMetadata: ({
|
|
2041
|
+
instanceId,
|
|
2042
|
+
groupId,
|
|
2043
|
+
...query
|
|
2044
|
+
}, params = {}) => this.request({
|
|
2045
|
+
path: `/api/instances/${instanceId}/groups/${groupId}`,
|
|
2046
|
+
method: "GET",
|
|
2047
|
+
secure: true,
|
|
2048
|
+
...params
|
|
2049
|
+
})
|
|
2050
|
+
};
|
|
2051
|
+
webhooks = {
|
|
2052
|
+
/**
|
|
2053
|
+
* @description Get the webhook configuration for the authenticated user. Returns null if no webhook is configured.
|
|
2054
|
+
*
|
|
2055
|
+
* @tags Webhooks
|
|
2056
|
+
* @name WebhookControllerGetConfig
|
|
2057
|
+
* @summary Get Webhook Configuration
|
|
2058
|
+
* @request GET:/api/webhooks/config
|
|
2059
|
+
* @secure
|
|
2060
|
+
* @response `200` `WebhookConfigResponseDto` Webhook configuration retrieved successfully
|
|
2061
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
2062
|
+
*/
|
|
2063
|
+
webhookControllerGetConfig: (params = {}) => this.request({
|
|
2064
|
+
path: `/api/webhooks/config`,
|
|
2065
|
+
method: "GET",
|
|
2066
|
+
secure: true,
|
|
2067
|
+
format: "json",
|
|
2068
|
+
...params
|
|
2069
|
+
}),
|
|
2070
|
+
/**
|
|
2071
|
+
* @description Create or update the webhook configuration for the authenticated user. Only one webhook URL can be configured per user, and all instance events will be sent to this URL.
|
|
2072
|
+
*
|
|
2073
|
+
* @tags Webhooks
|
|
2074
|
+
* @name WebhookControllerUpsertConfig
|
|
2075
|
+
* @summary Configure Webhook
|
|
2076
|
+
* @request PUT:/api/webhooks/config
|
|
2077
|
+
* @secure
|
|
2078
|
+
* @response `200` `WebhookConfigResponseDto` Webhook configuration saved successfully
|
|
2079
|
+
* @response `400` `BadRequestErrorDto` Dados da requisição inválidos
|
|
2080
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
2081
|
+
*/
|
|
2082
|
+
webhookControllerUpsertConfig: (data, params = {}) => this.request({
|
|
2083
|
+
path: `/api/webhooks/config`,
|
|
2084
|
+
method: "PUT",
|
|
2085
|
+
body: data,
|
|
2086
|
+
secure: true,
|
|
2087
|
+
type: ContentType.Json,
|
|
2088
|
+
format: "json",
|
|
2089
|
+
...params
|
|
2090
|
+
}),
|
|
2091
|
+
/**
|
|
2092
|
+
* @description Delete the webhook configuration and all queued webhooks for the authenticated user.
|
|
2093
|
+
*
|
|
2094
|
+
* @tags Webhooks
|
|
2095
|
+
* @name WebhookControllerDeleteConfig
|
|
2096
|
+
* @summary Delete Webhook Configuration
|
|
2097
|
+
* @request DELETE:/api/webhooks/config
|
|
2098
|
+
* @secure
|
|
2099
|
+
* @response `204` `void` Webhook configuration deleted successfully
|
|
2100
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
2101
|
+
*/
|
|
2102
|
+
webhookControllerDeleteConfig: (params = {}) => this.request({
|
|
2103
|
+
path: `/api/webhooks/config`,
|
|
2104
|
+
method: "DELETE",
|
|
2105
|
+
secure: true,
|
|
2106
|
+
...params
|
|
2107
|
+
}),
|
|
2108
|
+
/**
|
|
2109
|
+
* @description Get the status of the webhook delivery queue, including counts of pending, failed, paused, and delivered webhooks.
|
|
2110
|
+
*
|
|
2111
|
+
* @tags Webhooks
|
|
2112
|
+
* @name WebhookControllerGetQueueStatus
|
|
2113
|
+
* @summary Get Queue Status
|
|
2114
|
+
* @request GET:/api/webhooks/queue/status
|
|
2115
|
+
* @secure
|
|
2116
|
+
* @response `200` `WebhookQueueStatusResponseDto` Queue status retrieved successfully
|
|
2117
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
2118
|
+
*/
|
|
2119
|
+
webhookControllerGetQueueStatus: (params = {}) => this.request({
|
|
2120
|
+
path: `/api/webhooks/queue/status`,
|
|
2121
|
+
method: "GET",
|
|
2122
|
+
secure: true,
|
|
2123
|
+
format: "json",
|
|
2124
|
+
...params
|
|
2125
|
+
}),
|
|
2126
|
+
/**
|
|
2127
|
+
* @description Resume all paused and failed webhooks. This will unpause the webhook configuration and reset all paused/failed items to pending.
|
|
2128
|
+
*
|
|
2129
|
+
* @tags Webhooks
|
|
2130
|
+
* @name WebhookControllerResumeAll
|
|
2131
|
+
* @summary Resume Webhooks
|
|
2132
|
+
* @request POST:/api/webhooks/queue/resume
|
|
2133
|
+
* @secure
|
|
2134
|
+
* @response `200` `WebhookResumeResponseDto` Webhooks resumed successfully
|
|
2135
|
+
* @response `401` `UnauthorizedErrorDto` Não autorizado - API key inválida ou ausente
|
|
2136
|
+
*/
|
|
2137
|
+
webhookControllerResumeAll: (params = {}) => this.request({
|
|
2138
|
+
path: `/api/webhooks/queue/resume`,
|
|
2139
|
+
method: "POST",
|
|
2140
|
+
secure: true,
|
|
2141
|
+
format: "json",
|
|
2142
|
+
...params
|
|
2143
|
+
})
|
|
2144
|
+
};
|
|
2145
|
+
message = {
|
|
2146
|
+
/**
|
|
2147
|
+
* @description Envia uma mensagem de texto para um contato ou grupo do WhatsApp
|
|
2148
|
+
*
|
|
2149
|
+
* @tags Mensagens
|
|
2150
|
+
* @name SendMessageControllerSendTextMessage
|
|
2151
|
+
* @summary Enviar Mensagem de Texto
|
|
2152
|
+
* @request POST:/api/message/{instanceId}/text
|
|
2153
|
+
* @secure
|
|
2154
|
+
* @response `201` `CommonSendMessageResponseDto` Mensagem enviada com sucesso
|
|
2155
|
+
* @response `400` `void` Dados da requisição inválidos
|
|
2156
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2157
|
+
*/
|
|
2158
|
+
sendMessageControllerSendTextMessage: ({
|
|
2159
|
+
instanceId,
|
|
2160
|
+
...query
|
|
2161
|
+
}, data, params = {}) => this.request({
|
|
2162
|
+
path: `/api/message/${instanceId}/text`,
|
|
2163
|
+
method: "POST",
|
|
2164
|
+
body: data,
|
|
2165
|
+
secure: true,
|
|
2166
|
+
type: ContentType.Json,
|
|
2167
|
+
format: "json",
|
|
2168
|
+
...params
|
|
2169
|
+
}),
|
|
2170
|
+
/**
|
|
2171
|
+
* @description Envia uma mensagem de imagem para um contato ou grupo do WhatsApp
|
|
2172
|
+
*
|
|
2173
|
+
* @tags Mensagens
|
|
2174
|
+
* @name SendMessageControllerSendImageMessage
|
|
2175
|
+
* @summary Enviar Mensagem de Imagem
|
|
2176
|
+
* @request POST:/api/message/{instanceId}/image
|
|
2177
|
+
* @secure
|
|
2178
|
+
* @response `201` `CommonSendMessageResponseDto` Mensagem de imagem enviada com sucesso
|
|
2179
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de imagem inválido
|
|
2180
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2181
|
+
*/
|
|
2182
|
+
sendMessageControllerSendImageMessage: ({
|
|
2183
|
+
instanceId,
|
|
2184
|
+
...query
|
|
2185
|
+
}, data, params = {}) => this.request({
|
|
2186
|
+
path: `/api/message/${instanceId}/image`,
|
|
2187
|
+
method: "POST",
|
|
2188
|
+
body: data,
|
|
2189
|
+
secure: true,
|
|
2190
|
+
type: ContentType.Json,
|
|
2191
|
+
format: "json",
|
|
2192
|
+
...params
|
|
2193
|
+
}),
|
|
2194
|
+
/**
|
|
2195
|
+
* @description Envia uma mensagem de vídeo para um contato ou grupo do WhatsApp
|
|
2196
|
+
*
|
|
2197
|
+
* @tags Mensagens
|
|
2198
|
+
* @name SendMessageControllerSendVideoMessage
|
|
2199
|
+
* @summary Enviar Mensagem de Vídeo
|
|
2200
|
+
* @request POST:/api/message/{instanceId}/video
|
|
2201
|
+
* @secure
|
|
2202
|
+
* @response `201` `CommonSendMessageResponseDto` Mensagem de vídeo enviada com sucesso
|
|
2203
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de vídeo inválido
|
|
2204
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2205
|
+
*/
|
|
2206
|
+
sendMessageControllerSendVideoMessage: ({
|
|
2207
|
+
instanceId,
|
|
2208
|
+
...query
|
|
2209
|
+
}, data, params = {}) => this.request({
|
|
2210
|
+
path: `/api/message/${instanceId}/video`,
|
|
2211
|
+
method: "POST",
|
|
2212
|
+
body: data,
|
|
2213
|
+
secure: true,
|
|
2214
|
+
type: ContentType.Json,
|
|
2215
|
+
format: "json",
|
|
2216
|
+
...params
|
|
2217
|
+
}),
|
|
2218
|
+
/**
|
|
2219
|
+
* @description Envia uma nota de voz para um contato ou grupo do WhatsApp
|
|
2220
|
+
*
|
|
2221
|
+
* @tags Mensagens
|
|
2222
|
+
* @name SendMessageControllerSendAudioNoteMessage
|
|
2223
|
+
* @summary Enviar Mensagem de Áudio (Nota de Voz)
|
|
2224
|
+
* @request POST:/api/message/{instanceId}/audio-note
|
|
2225
|
+
* @secure
|
|
2226
|
+
* @response `201` `CommonSendMessageResponseDto` Nota de voz enviada com sucesso
|
|
2227
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de áudio inválido
|
|
2228
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2229
|
+
*/
|
|
2230
|
+
sendMessageControllerSendAudioNoteMessage: ({
|
|
2231
|
+
instanceId,
|
|
2232
|
+
...query
|
|
2233
|
+
}, data, params = {}) => this.request({
|
|
2234
|
+
path: `/api/message/${instanceId}/audio-note`,
|
|
2235
|
+
method: "POST",
|
|
2236
|
+
body: data,
|
|
2237
|
+
secure: true,
|
|
2238
|
+
type: ContentType.Json,
|
|
2239
|
+
format: "json",
|
|
2240
|
+
...params
|
|
2241
|
+
}),
|
|
2242
|
+
/**
|
|
2243
|
+
* @description Envia um arquivo de áudio para um contato ou grupo do WhatsApp
|
|
2244
|
+
*
|
|
2245
|
+
* @tags Mensagens
|
|
2246
|
+
* @name SendMessageControllerSendAudioFileMessage
|
|
2247
|
+
* @summary Enviar Arquivo de Áudio
|
|
2248
|
+
* @request POST:/api/message/{instanceId}/audio-file
|
|
2249
|
+
* @secure
|
|
2250
|
+
* @response `201` `CommonSendMessageResponseDto` Arquivo de áudio enviado com sucesso
|
|
2251
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de áudio inválido
|
|
2252
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2253
|
+
*/
|
|
2254
|
+
sendMessageControllerSendAudioFileMessage: ({
|
|
2255
|
+
instanceId,
|
|
2256
|
+
...query
|
|
2257
|
+
}, data, params = {}) => this.request({
|
|
2258
|
+
path: `/api/message/${instanceId}/audio-file`,
|
|
2259
|
+
method: "POST",
|
|
2260
|
+
body: data,
|
|
2261
|
+
secure: true,
|
|
2262
|
+
type: ContentType.Json,
|
|
2263
|
+
format: "json",
|
|
2264
|
+
...params
|
|
2265
|
+
}),
|
|
2266
|
+
/**
|
|
2267
|
+
* @description Envia um arquivo de documento para um contato ou grupo do WhatsApp
|
|
2268
|
+
*
|
|
2269
|
+
* @tags Mensagens
|
|
2270
|
+
* @name SendMessageControllerSendDocumentMessage
|
|
2271
|
+
* @summary Enviar Documento
|
|
2272
|
+
* @request POST:/api/message/{instanceId}/document
|
|
2273
|
+
* @secure
|
|
2274
|
+
* @response `201` `CommonSendMessageResponseDto` Documento enviado com sucesso
|
|
2275
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de documento inválido
|
|
2276
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2277
|
+
*/
|
|
2278
|
+
sendMessageControllerSendDocumentMessage: ({
|
|
2279
|
+
instanceId,
|
|
2280
|
+
...query
|
|
2281
|
+
}, data, params = {}) => this.request({
|
|
2282
|
+
path: `/api/message/${instanceId}/document`,
|
|
2283
|
+
method: "POST",
|
|
2284
|
+
body: data,
|
|
2285
|
+
secure: true,
|
|
2286
|
+
type: ContentType.Json,
|
|
2287
|
+
format: "json",
|
|
2288
|
+
...params
|
|
2289
|
+
}),
|
|
2290
|
+
/**
|
|
2291
|
+
* @description Encaminha uma mensagem existente para outro contato ou grupo do WhatsApp
|
|
2292
|
+
*
|
|
2293
|
+
* @tags Mensagens
|
|
2294
|
+
* @name SendMessageControllerForwardMessage
|
|
2295
|
+
* @summary Encaminhar Mensagem
|
|
2296
|
+
* @request POST:/api/message/{instanceId}/forward
|
|
2297
|
+
* @secure
|
|
2298
|
+
* @response `201` `CommonSendMessageResponseDto` Mensagem encaminhada com sucesso
|
|
2299
|
+
* @response `400` `void` Dados da requisição inválidos ou mensagem não encontrada
|
|
2300
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2301
|
+
*/
|
|
2302
|
+
sendMessageControllerForwardMessage: ({
|
|
2303
|
+
instanceId,
|
|
2304
|
+
...query
|
|
2305
|
+
}, data, params = {}) => this.request({
|
|
2306
|
+
path: `/api/message/${instanceId}/forward`,
|
|
2307
|
+
method: "POST",
|
|
2308
|
+
body: data,
|
|
2309
|
+
secure: true,
|
|
2310
|
+
type: ContentType.Json,
|
|
2311
|
+
format: "json",
|
|
2312
|
+
...params
|
|
2313
|
+
}),
|
|
2314
|
+
/**
|
|
2315
|
+
* @description Edita o conteúdo de uma mensagem de texto existente
|
|
2316
|
+
*
|
|
2317
|
+
* @tags Mensagens
|
|
2318
|
+
* @name SendMessageControllerEditMessage
|
|
2319
|
+
* @summary Editar Mensagem
|
|
2320
|
+
* @request POST:/api/message/{instanceId}/edit
|
|
2321
|
+
* @secure
|
|
2322
|
+
* @response `201` `CommonSendMessageResponseDto` Mensagem editada com sucesso
|
|
2323
|
+
* @response `400` `void` Dados da requisição inválidos ou mensagem não pode ser editada
|
|
2324
|
+
* @response `404` `void` Instância do WhatsApp ou mensagem não encontrada
|
|
2325
|
+
*/
|
|
2326
|
+
sendMessageControllerEditMessage: ({
|
|
2327
|
+
instanceId,
|
|
2328
|
+
...query
|
|
2329
|
+
}, data, params = {}) => this.request({
|
|
2330
|
+
path: `/api/message/${instanceId}/edit`,
|
|
2331
|
+
method: "POST",
|
|
2332
|
+
body: data,
|
|
2333
|
+
secure: true,
|
|
2334
|
+
type: ContentType.Json,
|
|
2335
|
+
format: "json",
|
|
2336
|
+
...params
|
|
2337
|
+
}),
|
|
2338
|
+
/**
|
|
2339
|
+
* @description Marca uma mensagem como lida (envia confirmação de leitura)
|
|
2340
|
+
*
|
|
2341
|
+
* @tags Mensagens
|
|
2342
|
+
* @name SendMessageControllerReadMessage
|
|
2343
|
+
* @summary Marcar Mensagem como Lida
|
|
2344
|
+
* @request POST:/api/message/{instanceId}/read
|
|
2345
|
+
* @secure
|
|
2346
|
+
* @response `201` `ReadMessageResponseDto` Mensagem marcada como lida com sucesso
|
|
2347
|
+
* @response `400` `void` Dados da requisição inválidos
|
|
2348
|
+
* @response `404` `void` Instância do WhatsApp ou mensagem não encontrada
|
|
2349
|
+
*/
|
|
2350
|
+
sendMessageControllerReadMessage: ({
|
|
2351
|
+
instanceId,
|
|
2352
|
+
...query
|
|
2353
|
+
}, data, params = {}) => this.request({
|
|
2354
|
+
path: `/api/message/${instanceId}/read`,
|
|
2355
|
+
method: "POST",
|
|
2356
|
+
body: data,
|
|
2357
|
+
secure: true,
|
|
2358
|
+
type: ContentType.Json,
|
|
2359
|
+
format: "json",
|
|
2360
|
+
...params
|
|
2361
|
+
}),
|
|
2362
|
+
/**
|
|
2363
|
+
* @description Envia uma localização geográfica para um contato ou grupo do WhatsApp
|
|
2364
|
+
*
|
|
2365
|
+
* @tags Mensagens
|
|
2366
|
+
* @name SendMessageControllerSendLocationMessage
|
|
2367
|
+
* @summary Enviar Localização
|
|
2368
|
+
* @request POST:/api/message/{instanceId}/location
|
|
2369
|
+
* @secure
|
|
2370
|
+
* @response `201` `CommonSendMessageResponseDto` Localização enviada com sucesso
|
|
2371
|
+
* @response `400` `void` Dados da requisição inválidos
|
|
2372
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2373
|
+
*/
|
|
2374
|
+
sendMessageControllerSendLocationMessage: ({
|
|
2375
|
+
instanceId,
|
|
2376
|
+
...query
|
|
2377
|
+
}, data, params = {}) => this.request({
|
|
2378
|
+
path: `/api/message/${instanceId}/location`,
|
|
2379
|
+
method: "POST",
|
|
2380
|
+
body: data,
|
|
2381
|
+
secure: true,
|
|
2382
|
+
type: ContentType.Json,
|
|
2383
|
+
format: "json",
|
|
2384
|
+
...params
|
|
2385
|
+
}),
|
|
2386
|
+
/**
|
|
2387
|
+
* @description Envia um cartão de contato para um contato ou grupo do WhatsApp
|
|
2388
|
+
*
|
|
2389
|
+
* @tags Mensagens
|
|
2390
|
+
* @name SendMessageControllerSendContactMessage
|
|
2391
|
+
* @summary Enviar Contato
|
|
2392
|
+
* @request POST:/api/message/{instanceId}/contact
|
|
2393
|
+
* @secure
|
|
2394
|
+
* @response `201` `CommonSendMessageResponseDto` Contato enviado com sucesso
|
|
2395
|
+
* @response `400` `void` Dados da requisição inválidos
|
|
2396
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2397
|
+
*/
|
|
2398
|
+
sendMessageControllerSendContactMessage: ({
|
|
2399
|
+
instanceId,
|
|
2400
|
+
...query
|
|
2401
|
+
}, data, params = {}) => this.request({
|
|
2402
|
+
path: `/api/message/${instanceId}/contact`,
|
|
2403
|
+
method: "POST",
|
|
2404
|
+
body: data,
|
|
2405
|
+
secure: true,
|
|
2406
|
+
type: ContentType.Json,
|
|
2407
|
+
format: "json",
|
|
2408
|
+
...params
|
|
2409
|
+
}),
|
|
2410
|
+
/**
|
|
2411
|
+
* @description Envia um sticker para um contato ou grupo do WhatsApp
|
|
2412
|
+
*
|
|
2413
|
+
* @tags Mensagens
|
|
2414
|
+
* @name SendMessageControllerSendStickerMessage
|
|
2415
|
+
* @summary Enviar Sticker
|
|
2416
|
+
* @request POST:/api/message/{instanceId}/sticker
|
|
2417
|
+
* @secure
|
|
2418
|
+
* @response `201` `CommonSendMessageResponseDto` Sticker enviado com sucesso
|
|
2419
|
+
* @response `400` `void` Dados da requisição inválidos ou formato de sticker inválido
|
|
2420
|
+
* @response `404` `void` Instância do WhatsApp não encontrada
|
|
2421
|
+
*/
|
|
2422
|
+
sendMessageControllerSendStickerMessage: ({
|
|
2423
|
+
instanceId,
|
|
2424
|
+
...query
|
|
2425
|
+
}, data, params = {}) => this.request({
|
|
2426
|
+
path: `/api/message/${instanceId}/sticker`,
|
|
2427
|
+
method: "POST",
|
|
2428
|
+
body: data,
|
|
2429
|
+
secure: true,
|
|
2430
|
+
type: ContentType.Json,
|
|
2431
|
+
format: "json",
|
|
2432
|
+
...params
|
|
2433
|
+
}),
|
|
2434
|
+
/**
|
|
2435
|
+
* @description Adiciona uma reação (emoji) a uma mensagem existente
|
|
2436
|
+
*
|
|
2437
|
+
* @tags Mensagens
|
|
2438
|
+
* @name SendMessageControllerSendReaction
|
|
2439
|
+
* @summary Enviar Reação
|
|
2440
|
+
* @request POST:/api/message/{instanceId}/reaction
|
|
2441
|
+
* @secure
|
|
2442
|
+
* @response `204` `void` Reação enviada com sucesso
|
|
2443
|
+
* @response `400` `void` Dados da requisição inválidos
|
|
2444
|
+
* @response `404` `void` Instância do WhatsApp ou mensagem não encontrada
|
|
2445
|
+
*/
|
|
2446
|
+
sendMessageControllerSendReaction: ({
|
|
2447
|
+
instanceId,
|
|
2448
|
+
...query
|
|
2449
|
+
}, data, params = {}) => this.request({
|
|
2450
|
+
path: `/api/message/${instanceId}/reaction`,
|
|
2451
|
+
method: "POST",
|
|
2452
|
+
body: data,
|
|
2453
|
+
secure: true,
|
|
2454
|
+
type: ContentType.Json,
|
|
2455
|
+
...params
|
|
2456
|
+
}),
|
|
2457
|
+
/**
|
|
2458
|
+
* @description Exclui uma mensagem para todos no chat
|
|
2459
|
+
*
|
|
2460
|
+
* @tags Mensagens
|
|
2461
|
+
* @name SendMessageControllerDeleteMessage
|
|
2462
|
+
* @summary Excluir Mensagem
|
|
2463
|
+
* @request DELETE:/api/message/{instanceId}/delete
|
|
2464
|
+
* @secure
|
|
2465
|
+
* @response `204` `void` Mensagem excluída com sucesso
|
|
2466
|
+
* @response `400` `void` Dados da requisição inválidos ou mensagem não pode ser excluída
|
|
2467
|
+
* @response `404` `void` Instância do WhatsApp ou mensagem não encontrada
|
|
2468
|
+
*/
|
|
2469
|
+
sendMessageControllerDeleteMessage: ({
|
|
2470
|
+
instanceId,
|
|
2471
|
+
...query
|
|
2472
|
+
}, data, params = {}) => this.request({
|
|
2473
|
+
path: `/api/message/${instanceId}/delete`,
|
|
2474
|
+
method: "DELETE",
|
|
2475
|
+
body: data,
|
|
2476
|
+
secure: true,
|
|
2477
|
+
type: ContentType.Json,
|
|
2478
|
+
...params
|
|
2479
|
+
}),
|
|
2480
|
+
/**
|
|
2481
|
+
* @description Obtém um link de download para conteúdo de mídia de uma mensagem
|
|
2482
|
+
*
|
|
2483
|
+
* @tags Mensagens
|
|
2484
|
+
* @name SendMessageControllerGetMessageMediaDownloadLink
|
|
2485
|
+
* @summary Obter Link de Download de Mídia
|
|
2486
|
+
* @request GET:/api/message/{instanceId}/media-download-link/{messageId}
|
|
2487
|
+
* @secure
|
|
2488
|
+
* @response `200` `GetMessageMediaDownloadLinkResponseDto` Link de download de mídia obtido com sucesso
|
|
2489
|
+
* @response `400` `void` Formato de ID da mensagem inválido
|
|
2490
|
+
* @response `404` `void` Instância do WhatsApp, mensagem ou mídia não encontrada
|
|
2491
|
+
*/
|
|
2492
|
+
sendMessageControllerGetMessageMediaDownloadLink: ({
|
|
2493
|
+
instanceId,
|
|
2494
|
+
messageId,
|
|
2495
|
+
...query
|
|
2496
|
+
}, params = {}) => this.request({
|
|
2497
|
+
path: `/api/message/${instanceId}/media-download-link/${messageId}`,
|
|
2498
|
+
method: "GET",
|
|
2499
|
+
secure: true,
|
|
2500
|
+
format: "json",
|
|
2501
|
+
...params
|
|
2502
|
+
})
|
|
2503
|
+
};
|
|
2504
|
+
}
|
|
2505
|
+
|
|
2506
|
+
export { AuthenticationError, InstanceNotFoundError, InstanceStatus, NetworkError, RateLimitError, TimeoutError, ValidationError, WebhookQueueStatus, ZapyApiError, ZapyClient, ZapyError, ZapyEventTypes, ZapyMessageStatusEnum, ZapyMessageType, Api as ZapyRestApi, createClient, extractPhone, isAudioMessage, isCallMessage, isContactMessage, isDeletedMessage, isDocumentMessage, isEditedMessage, isGroup, isImageMessage, isLiveLocationMessage, isLocationMessage, isMediaMessage, isPollMessage, isPollVoteMessage, isReactionMessage, isStickerMessage, isTextMessage, isUnsupportedMessage, isValidPhone, isVideoMessage, normalizePhone, verifyWebhookSignature, verifyWebhookSignatureAsync };
|