Files
whatsappNucleo/docs/baileys-api-reference.md
josedario87 9f2f3ac510
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 1m3s
Docs: Script para scrapear documentacion de Baileys API
- Script en scripts/scrape-baileys-docs.ts
- Genera docs/baileys-api-reference.md con 6433 lineas
- 79 secciones: interfaces, types, functions, variables, enums
- Referencia completa para desarrollo de mensajes
2025-12-02 20:49:59 -06:00

97 KiB
Raw Blame History

Baileys API Documentation Reference

Auto-generated documentation for WhatsApp Nucleo development Source: https://baileys.wiki Generated: 2025-12-03T02:48:39.883Z

This document contains the relevant Baileys API documentation for developing the WhatsApp Nucleo messaging features.

Table of Contents

Interfaces

Type Aliases

Functions

Variables

Enumerations

Interfaces


Interface: Contact

Source: https://baileys.wiki/docs/api/interfaces/Contact

On this page

Defined in: src/Types/Contact.ts:1

Properties

id

id: string

Defined in: src/Types/Contact.ts:3

ID either in lid or jid format (preferred) *

imgUrl?

optional imgUrl: null | string

Defined in: src/Types/Contact.ts:22

Url of the profile picture of the contact

'changed' => if the profile picture has changed null => if the profile picture has not been set (default profile picture) any other string => url of the profile picture

lid?

optional lid: string

Defined in: src/Types/Contact.ts:5

ID in LID format (@lid) *

name?

optional name: string

Defined in: src/Types/Contact.ts:9

name of the contact, you have saved on your WA

notify?

optional notify: string

Defined in: src/Types/Contact.ts:11

name of the contact, the contact has set on their own on WA

phoneNumber?

optional phoneNumber: string

Defined in: src/Types/Contact.ts:7

ID in PN format (@s.whatsapp.net) *

status?

optional status: string

Defined in: src/Types/Contact.ts:23

verifiedName?

optional verifiedName: string

Defined in: src/Types/Contact.ts:13

I have no idea

  • Properties id
  • imgUrl?
  • lid?
  • name?
  • notify?
  • phoneNumber?
  • status?
  • verifiedName?

Interface: GroupMetadata

Source: https://baileys.wiki/docs/api/interfaces/GroupMetadata

On this page

Defined in: src/Types/GroupMetadata.ts:16

Properties

addressingMode?

optional addressingMode: WAMessageAddressingMode

Defined in: src/Types/GroupMetadata.ts:20

group uses 'lid' or 'pn' to send messages

announce?

optional announce: boolean

Defined in: src/Types/GroupMetadata.ts:41

is set when the group only allows admins to write messages

author?

optional author: string

Defined in: src/Types/GroupMetadata.ts:57

the person who added you to group or changed some setting in group

authorPn?

optional authorPn: string

Defined in: src/Types/GroupMetadata.ts:58

creation?

optional creation: number

Defined in: src/Types/GroupMetadata.ts:30

desc?

optional desc: string

Defined in: src/Types/GroupMetadata.ts:31

descId?

optional descId: string

Defined in: src/Types/GroupMetadata.ts:34

descOwner?

optional descOwner: string

Defined in: src/Types/GroupMetadata.ts:32

descOwnerPn?

optional descOwnerPn: string

Defined in: src/Types/GroupMetadata.ts:33

descTime?

optional descTime: number

Defined in: src/Types/GroupMetadata.ts:35

ephemeralDuration?

optional ephemeralDuration: number

Defined in: src/Types/GroupMetadata.ts:54

id

id: string

Defined in: src/Types/GroupMetadata.ts:17

inviteCode?

optional inviteCode: string

Defined in: src/Types/GroupMetadata.ts:55

isCommunity?

optional isCommunity: boolean

Defined in: src/Types/GroupMetadata.ts:47

is this a community

isCommunityAnnounce?

optional isCommunityAnnounce: boolean

Defined in: src/Types/GroupMetadata.ts:49

is this the announce of a community

joinApprovalMode?

optional joinApprovalMode: boolean

Defined in: src/Types/GroupMetadata.ts:45

Request approval to join the group

linkedParent?

optional linkedParent: string

Defined in: src/Types/GroupMetadata.ts:37

if this group is part of a community, it returns the jid of the community to which it belongs

memberAddMode?

optional memberAddMode: boolean

Defined in: src/Types/GroupMetadata.ts:43

is set when the group also allows members to add participants

notify?

optional notify: string

Defined in: src/Types/GroupMetadata.ts:18

owner

owner: undefined | string

Defined in: src/Types/GroupMetadata.ts:21

owner_country_code?

optional owner_country_code: string

Defined in: src/Types/GroupMetadata.ts:23

ownerPn?

optional ownerPn: string

Defined in: src/Types/GroupMetadata.ts:22

participants

participants: GroupParticipant[]

Defined in: src/Types/GroupMetadata.ts:53

restrict?

optional restrict: boolean

Defined in: src/Types/GroupMetadata.ts:39

is set when the group only allows admins to change group settings

size?

optional size: number

Defined in: src/Types/GroupMetadata.ts:51

number of group participants

subject

subject: string

Defined in: src/Types/GroupMetadata.ts:24

subjectOwner?

optional subjectOwner: string

Defined in: src/Types/GroupMetadata.ts:26

group subject owner

subjectOwnerPn?

optional subjectOwnerPn: string

Defined in: src/Types/GroupMetadata.ts:27

subjectTime?

optional subjectTime: number

Defined in: src/Types/GroupMetadata.ts:29

group subject modification date

  • Properties addressingMode?
  • announce?
  • author?
  • authorPn?
  • creation?
  • desc?
  • descId?
  • descOwner?
  • descOwnerPn?
  • descTime?
  • ephemeralDuration?
  • id
  • inviteCode?
  • isCommunity?
  • isCommunityAnnounce?
  • joinApprovalMode?
  • linkedParent?
  • memberAddMode?
  • notify?
  • owner
  • owner_country_code?
  • ownerPn?
  • participants
  • restrict?
  • size?
  • subject
  • subjectOwner?
  • subjectOwnerPn?
  • subjectTime?

Interface: GroupModificationResponse

Source: https://baileys.wiki/docs/api/interfaces/GroupModificationResponse

On this page

Defined in: src/Types/GroupMetadata.ts:67

Properties

participants?

optional participants: object

Defined in: src/Types/GroupMetadata.ts:69

Index Signature

status

status: number

Defined in: src/Types/GroupMetadata.ts:68

  • Properties participants?
  • status

Interface: PresenceData

Source: https://baileys.wiki/docs/api/interfaces/PresenceData

On this page

Defined in: src/Types/Chat.ts:36

Properties

lastKnownPresence

lastKnownPresence: WAPresence

Defined in: src/Types/Chat.ts:37

lastSeen?

optional lastSeen: number

Defined in: src/Types/Chat.ts:38

  • Properties lastKnownPresence
  • lastSeen?

Interface: BaileysEventEmitter

Source: https://baileys.wiki/docs/api/interfaces/BaileysEventEmitter

On this page

Defined in: src/Types/Events.ts:127

Methods

emit()

emit<T>(event, arg): boolean

Defined in: src/Types/Events.ts:131

Type Parameters

T extends keyof BaileysEventMap

Parameters

event

T

arg

BaileysEventMap[T]

Returns

boolean

off()

off<T>(event, listener): void

Defined in: src/Types/Events.ts:129

Type Parameters

T extends keyof BaileysEventMap

Parameters

event

T

listener

(arg) => void

Returns

void

on()

on<T>(event, listener): void

Defined in: src/Types/Events.ts:128

Type Parameters

T extends keyof BaileysEventMap

Parameters

event

T

listener

(arg) => void

Returns

void

removeAllListeners()

removeAllListeners<T>(event): void

Defined in: src/Types/Events.ts:130

Type Parameters

T extends keyof BaileysEventMap

Parameters

event

T

Returns

void

  • Methods emit()
  • off()
  • on()
  • removeAllListeners()

Interface: WAUrlInfo

Source: https://baileys.wiki/docs/api/interfaces/WAUrlInfo

On this page

Defined in: src/Types/Message.ts:102

Properties

canonical-url

canonical-url: string

Defined in: src/Types/Message.ts:103

description?

optional description: string

Defined in: src/Types/Message.ts:106

highQualityThumbnail?

optional highQualityThumbnail: IImageMessage

Defined in: src/Types/Message.ts:108

jpegThumbnail?

optional jpegThumbnail: Buffer<ArrayBufferLike>

Defined in: src/Types/Message.ts:107

matched-text

matched-text: string

Defined in: src/Types/Message.ts:104

originalThumbnailUrl?

optional originalThumbnailUrl: string

Defined in: src/Types/Message.ts:109

title

title: string

Defined in: src/Types/Message.ts:105

  • Properties canonical-url
  • description?
  • highQualityThumbnail?
  • jpegThumbnail?
  • matched-text
  • originalThumbnailUrl?
  • title

Interface: RecentMessage

Source: https://baileys.wiki/docs/api/interfaces/RecentMessage

On this page

Defined in: src/Utils/message-retry-manager.ts:18

Properties

message

message: IMessage

Defined in: src/Utils/message-retry-manager.ts:19

timestamp

timestamp: number

Defined in: src/Utils/message-retry-manager.ts:20

  • Properties message
  • timestamp

Types


Type: Chat

Source: https://baileys.wiki/docs/api/type-aliases/Chat

On this page

Chat: IConversation & object

Defined in: src/Types/Chat.ts:59

Type declaration

lastMessageRecvTimestamp?

optional lastMessageRecvTimestamp: number

unix timestamp of when the last message was received in the chat

  • Type declaration lastMessageRecvTimestamp?

Type: ChatModification

Source: https://baileys.wiki/docs/api/type-aliases/ChatModification

On this page

ChatModification: { archive: boolean; lastMessages: LastMessageList; } | { pushNameSetting: string; } | { pin: boolean; } | { mute: number | null; } | { clear: boolean; lastMessages: LastMessageList; } | { deleteForMe: { deleteMedia: boolean; key: WAMessageKey; timestamp: number; }; } | { star: { messages: object[]; star: boolean; }; } | { lastMessages: LastMessageList; markRead: boolean; } | { delete: true; lastMessages: LastMessageList; } | { contact: IContactAction | null; } | { disableLinkPreviews: IPrivacySettingDisableLinkPreviewsAction; } | { addLabel: LabelActionBody; } | { addChatLabel: ChatLabelAssociationActionBody; } | { removeChatLabel: ChatLabelAssociationActionBody; } | { addMessageLabel: MessageLabelAssociationActionBody; } | { removeMessageLabel: MessageLabelAssociationActionBody; } | { quickReply: QuickReplyAction; }

Defined in: src/Types/Chat.ts:87

Type declaration

{ archive: boolean; lastMessages: LastMessageList; }

archive

archive: boolean

lastMessages

lastMessages: LastMessageList

{ pushNameSetting: string; }

pushNameSetting

pushNameSetting: string

{ pin: boolean; }

pin

pin: boolean

{ mute: number | null; }

mute

mute: number | null

mute for duration, or provide timestamp of mute to remove

{ clear: boolean; lastMessages: LastMessageList; }

clear

clear: boolean

lastMessages

lastMessages: LastMessageList

{ deleteForMe: { deleteMedia: boolean; key: WAMessageKey; timestamp: number; }; }

deleteForMe

deleteForMe: object

deleteForMe.deleteMedia

deleteMedia: boolean

deleteForMe.key

key: WAMessageKey

deleteForMe.timestamp

timestamp: number

{ star: { messages: object[]; star: boolean; }; }

star

star: object

star.messages

messages: object[]

star.star

star: boolean

{ lastMessages: LastMessageList; markRead: boolean; }

lastMessages

lastMessages: LastMessageList

markRead

markRead: boolean

{ delete: true; lastMessages: LastMessageList; }

delete

delete: true

lastMessages

lastMessages: LastMessageList

{ contact: IContactAction | null; }

contact

contact: IContactAction | null

{ disableLinkPreviews: IPrivacySettingDisableLinkPreviewsAction; }

disableLinkPreviews

disableLinkPreviews: IPrivacySettingDisableLinkPreviewsAction

{ addLabel: LabelActionBody; }

addLabel

addLabel: LabelActionBody

{ addChatLabel: ChatLabelAssociationActionBody; }

addChatLabel

addChatLabel: ChatLabelAssociationActionBody

{ removeChatLabel: ChatLabelAssociationActionBody; }

removeChatLabel

removeChatLabel: ChatLabelAssociationActionBody

{ addMessageLabel: MessageLabelAssociationActionBody; }

addMessageLabel

addMessageLabel: MessageLabelAssociationActionBody

{ removeMessageLabel: MessageLabelAssociationActionBody; }

removeMessageLabel

removeMessageLabel: MessageLabelAssociationActionBody

{ quickReply: QuickReplyAction; }

quickReply

quickReply: QuickReplyAction

  • Type declaration archive
  • lastMessages
  • pushNameSetting
  • pin
  • mute
  • clear
  • lastMessages
  • deleteForMe
  • star
  • lastMessages
  • markRead
  • delete
  • lastMessages
  • contact
  • disableLinkPreviews
  • addLabel
  • addChatLabel
  • removeChatLabel
  • addMessageLabel
  • removeMessageLabel
  • quickReply

Type: ChatUpdate

Source: https://baileys.wiki/docs/api/type-aliases/ChatUpdate

ChatUpdate: Partial<Chat & object>

Defined in: src/Types/Chat.ts:64


Type: ChatMutation

Source: https://baileys.wiki/docs/api/type-aliases/ChatMutation

On this page

ChatMutation: object

Defined in: src/Types/Chat.ts:46

Type declaration

index

index: string[]

syncAction

syncAction: ISyncActionData

  • Type declaration index
  • syncAction

Type: WAMessage

Source: https://baileys.wiki/docs/api/type-aliases/WAMessage

On this page

WAMessage: IWebMessageInfo & object

Defined in: src/Types/Message.ts:11

Type declaration

category?

optional category: string

key

key: WAMessageKey

messageStubParameters?

optional messageStubParameters: any

retryCount?

optional retryCount: number

  • Type declaration category?
  • key
  • messageStubParameters?
  • retryCount?

Type: WAMessageContent

Source: https://baileys.wiki/docs/api/type-aliases/WAMessageContent

WAMessageContent: IMessage

Defined in: src/Types/Message.ts:17


Type: WAMessageKey

Source: https://baileys.wiki/docs/api/type-aliases/WAMessageKey

On this page

WAMessageKey: IMessageKey & object

Defined in: src/Types/Message.ts:20

Type declaration

addressingMode?

optional addressingMode: string

isViewOnce?

optional isViewOnce: boolean

participantAlt?

optional participantAlt: string

remoteJidAlt?

optional remoteJidAlt: string

server_id?

optional server_id: string

  • Type declaration addressingMode?
  • isViewOnce?
  • participantAlt?
  • remoteJidAlt?
  • server_id?

Type: WAMessageUpdate

Source: https://baileys.wiki/docs/api/type-aliases/WAMessageUpdate

On this page

WAMessageUpdate: object

Defined in: src/Types/Message.ts:368

Type declaration

key

key: WAMessageKey

update

update: Partial<WAMessage>

  • Type declaration key
  • update

Type: MessageType

Source: https://baileys.wiki/docs/api/type-aliases/MessageType

MessageType: keyof Message

Defined in: src/Types/Message.ts:43

Set of message types that are supported by the library


Type: MessageUpsertType

Source: https://baileys.wiki/docs/api/type-aliases/MessageUpsertType

MessageUpsertType: "append" | "notify"

Defined in: src/Types/Message.ts:364

Type of message upsert

  • notify => notify the user, this message was just received

  • append => append the message to the chat history, no notification required


Type: AnyMessageContent

Source: https://baileys.wiki/docs/api/type-aliases/AnyMessageContent

On this page

AnyMessageContent: AnyRegularMessageContent | { force: boolean; forward: WAMessage; } | { delete: WAMessageKey; } | { disappearingMessagesInChat: boolean | number; } | { limitSharing: boolean; }

Defined in: src/Types/Message.ts:271

Type declaration

AnyRegularMessageContent

{ force: boolean; forward: WAMessage; }

force?

optional force: boolean

forward

forward: WAMessage

{ delete: WAMessageKey; }

delete

delete: WAMessageKey

Delete your message or anyone's message in a group (admin required)

{ disappearingMessagesInChat: boolean | number; }

disappearingMessagesInChat

disappearingMessagesInChat: boolean | number

{ limitSharing: boolean; }

limitSharing

limitSharing: boolean

  • Type declaration force?
  • forward
  • delete
  • disappearingMessagesInChat
  • limitSharing

Type: AnyMediaMessageContent

Source: https://baileys.wiki/docs/api/type-aliases/AnyMediaMessageContent

On this page

AnyMediaMessageContent: object & Mentionable & Contextable & WithDimensions | object & Mentionable & Contextable & WithDimensions | { audio: WAMediaUpload; ptt: boolean; seconds: number; } | object & WithDimensions | object & Contextable & object & Editable

Defined in: src/Types/Message.ts:163

Type declaration

mimetype?

optional mimetype: string

  • Type declaration mimetype?

Type: AnyRegularMessageContent

Source: https://baileys.wiki/docs/api/type-aliases/AnyRegularMessageContent

AnyRegularMessageContent: object & Mentionable & Contextable & Editable | AnyMediaMessageContent | { event: EventMessageOptions; } | object & Mentionable & Contextable & Editable | { contacts: { contacts: IContactMessage[]; displayName: string; }; } | { location: WALocationMessage; } | { react: IReactionMessage; } | { buttonReply: ButtonReplyInfo; type: "template" | "plain"; } | { groupInvite: GroupInviteInfo; } | { listReply: Omit<IListResponseMessage, "contextInfo">; } | { pin: WAMessageKey; time: 86400 | 604800 | 2592000; type: Type; } | { body: string; businessOwnerJid: string; footer: string; product: WASendableProduct; } | SharePhoneNumber | RequestPhoneNumber & ViewOnce

Defined in: src/Types/Message.ts:218


Type: MessageGenerationOptions

Source: https://baileys.wiki/docs/api/type-aliases/MessageGenerationOptions

MessageGenerationOptions: MessageContentGenerationOptions & MessageGenerationOptionsFromContent

Defined in: src/Types/Message.ts:357


Type: MessageContentGenerationOptions

Source: https://baileys.wiki/docs/api/type-aliases/MessageContentGenerationOptions

On this page

MessageContentGenerationOptions: MediaGenerationOptions & object

Defined in: src/Types/Message.ts:351

Type declaration

optional getCallLink: (type, event?) => Promise<string | undefined>

Parameters

type

"audio" | "video"

event? startTime

number

Returns

Promise<string | undefined>

getProfilePicUrl()?

optional getProfilePicUrl: (jid, type) => Promise<string | undefined>

Parameters

jid

string

type

"image" | "preview"

Returns

Promise<string | undefined>

getUrlInfo()?

optional getUrlInfo: (text) => Promise<WAUrlInfo | undefined>

Parameters

text

string

Returns

Promise<WAUrlInfo | undefined>

jid?

optional jid: string

  • Type declaration getCallLink()?
  • getProfilePicUrl()?
  • getUrlInfo()?
  • jid?

Type: MinimalMessage

Source: https://baileys.wiki/docs/api/type-aliases/MinimalMessage

MinimalMessage: Pick<WAMessage, "key" | "messageTimestamp">

Defined in: src/Types/Message.ts:380


Type: MediaType

Source: https://baileys.wiki/docs/api/type-aliases/MediaType

MediaType: keyof typeof MEDIA_HKDF_KEY_MAPPING

Defined in: src/Defaults/index.ts:117


Type: MediaDownloadOptions

Source: https://baileys.wiki/docs/api/type-aliases/MediaDownloadOptions

On this page

MediaDownloadOptions: object

Defined in: src/Utils/messages-media.ts:498

Type declaration

endByte?

optional endByte: number

options?

optional options: RequestInit

startByte?

optional startByte: number

  • Type declaration endByte?
  • options?
  • startByte?

Type: WAMediaUpload

Source: https://baileys.wiki/docs/api/type-aliases/WAMediaUpload

WAMediaUpload: Buffer | WAMediaPayloadStream | WAMediaPayloadURL

Defined in: src/Types/Message.ts:41


Type: DownloadableMessage

Source: https://baileys.wiki/docs/api/type-aliases/DownloadableMessage

On this page

DownloadableMessage: object

Defined in: src/Types/Message.ts:83

Type declaration

directPath?

optional directPath: string | null

mediaKey?

optional mediaKey: Uint8Array | null

url?

optional url: string | null

  • Type declaration directPath?
  • mediaKey?
  • url?

Type: MediaGenerationOptions

Source: https://baileys.wiki/docs/api/type-aliases/MediaGenerationOptions

On this page

MediaGenerationOptions: object

Defined in: src/Types/Message.ts:336

Type declaration

backgroundColor?

optional backgroundColor: string

font?

optional font: number

logger?

optional logger: ILogger

mediaCache?

optional mediaCache: CacheStore

cache media so it does not have to be uploaded again

mediaTypeOverride?

optional mediaTypeOverride: MediaType

mediaUploadTimeoutMs?

optional mediaUploadTimeoutMs: number

options?

optional options: RequestInit

upload

upload: WAMediaUploadFunction

  • Type declaration backgroundColor?
  • font?
  • logger?
  • mediaCache?
  • mediaTypeOverride?
  • mediaUploadTimeoutMs?
  • options?
  • upload

Type: GroupParticipant

Source: https://baileys.wiki/docs/api/type-aliases/GroupParticipant

On this page

GroupParticipant: Contact & object

Defined in: src/Types/GroupMetadata.ts:4

Type declaration

admin?

optional admin: "admin" | "superadmin" | null

isAdmin?

optional isAdmin: boolean

isSuperAdmin?

optional isSuperAdmin: boolean

  • Type declaration admin?
  • isAdmin?
  • isSuperAdmin?

Type: GroupInviteInfo

Source: https://baileys.wiki/docs/api/type-aliases/GroupInviteInfo

On this page

GroupInviteInfo: object

Defined in: src/Types/Message.ts:206

Type declaration

inviteCode

inviteCode: string

inviteExpiration

inviteExpiration: number

jid

jid: string

subject

subject: string

text

text: string

  • Type declaration inviteCode
  • inviteExpiration
  • jid
  • subject
  • text

Type: ParticipantAction

Source: https://baileys.wiki/docs/api/type-aliases/ParticipantAction

ParticipantAction: "add" | "remove" | "promote" | "demote" | "modify"

Defined in: src/Types/GroupMetadata.ts:10


Type: WAPresence

Source: https://baileys.wiki/docs/api/type-aliases/WAPresence

WAPresence: "unavailable" | "available" | "composing" | "recording" | "paused"

Defined in: src/Types/Chat.ts:24

set of statuses visible to other people; see updatePresence() in WhatsAppWeb.Send


Type: ConnectionState

Source: https://baileys.wiki/docs/api/type-aliases/ConnectionState

On this page

ConnectionState: object

Defined in: src/Types/State.ts:17

Type declaration

connection

connection: WAConnectionState

connection is now open, connecting or closed

isNewLogin?

optional isNewLogin: boolean

is this a new login

isOnline?

optional isOnline: boolean

if the client is shown as an active, online client. If this is false, the primary phone and other devices will receive notifs

lastDisconnect?

optional lastDisconnect: object

the error that caused the connection to close

lastDisconnect.date

date: Date

lastDisconnect.error

error: Boom | Error | undefined

legacy?

optional legacy: object

legacy connection options

legacy.phoneConnected

phoneConnected: boolean

legacy.user?

optional user: Contact

qr?

optional qr: string

the current QR code

receivedPendingNotifications?

optional receivedPendingNotifications: boolean

has the device received all pending notifications while it was offline

  • Type declaration connection
  • isNewLogin?
  • isOnline?
  • lastDisconnect?
  • legacy?
  • qr?
  • receivedPendingNotifications?

Type: BaileysEventMap

Source: https://baileys.wiki/docs/api/type-aliases/BaileysEventMap

On this page

BaileysEventMap: object

Defined in: src/Types/Events.ts:20

Type declaration

blocklist.set

set: object

blocklist.set.blocklist

blocklist: string[]

blocklist.update

update: object

blocklist.update.blocklist

blocklist: string[]

blocklist.update.type

type: "add" | "remove"

call

call: WACallEvent[]

Receive an update on a call, including when the call was received, rejected, accepted

chats.delete

delete: string[]

delete chats with given ID

chats.update

update: ChatUpdate[]

update the given chats

chats.upsert

upsert: Chat[]

upsert chats

connection.update

update: Partial<ConnectionState>

connection state has been updated -- WS closed, opened, connecting etc.

contacts.update

update: Partial<Contact>[]

contacts.upsert

upsert: Contact[]

creds.update

update: Partial<AuthenticationCreds>

credentials updated -- some metadata, keys or something

group-participants.update

update: object

apply an action to participants in a group

group-participants.update.action

action: ParticipantAction

group-participants.update.author

author: string

group-participants.update.authorPn?

optional authorPn: string

group-participants.update.id

id: string

group-participants.update.participants

participants: GroupParticipant[]

group.join-request

join-request: object

group.join-request.action

action: RequestJoinAction

group.join-request.author

author: string

group.join-request.authorPn?

optional authorPn: string

group.join-request.id

id: string

group.join-request.method

method: RequestJoinMethod

group.join-request.participant

participant: string

group.join-request.participantPn?

optional participantPn: string

groups.update

update: Partial<GroupMetadata>[]

groups.upsert

upsert: GroupMetadata[]

labels.association

association: object

labels.association.association

association: LabelAssociation

labels.association.type

type: "add" | "remove"

labels.edit

edit: Label

lid-mapping.update

update: object

lid-mapping.update.lid

lid: string

lid-mapping.update.pn

pn: string

message-receipt.update

update: MessageUserReceiptUpdate[]

messages.delete

delete: { keys: WAMessageKey[]; } | { all: true; jid: string; }

messages.media-update

media-update: object[]

messages.reaction

reaction: object[]

message was reacted to. If reaction was removed -- then "reaction.text" will be falsey

messages.update

update: WAMessageUpdate[]

messages.upsert

upsert: object

add/update the given messages. If they were received while the connection was online, the update will have type: "notify" if requestId is provided, then the messages was received from the phone due to it being unavailable

messages.upsert.messages

messages: WAMessage[]

messages.upsert.requestId?

optional requestId: string

messages.upsert.type

type: MessageUpsertType

messaging-history.set

set: object

set chats (history sync), everything is reverse chronologically sorted

messaging-history.set.chats

chats: Chat[]

messaging-history.set.contacts

contacts: Contact[]

messaging-history.set.isLatest?

optional isLatest: boolean

messaging-history.set.messages

messages: WAMessage[]

messaging-history.set.peerDataRequestSessionId?

optional peerDataRequestSessionId: string | null

messaging-history.set.progress?

optional progress: number | null

messaging-history.set.syncType?

optional syncType: HistorySyncType | null

newsletter-participants.update

update: object

newsletter-participants.update.action

action: string

newsletter-participants.update.author

author: string

newsletter-participants.update.id

id: string

newsletter-participants.update.new_role

new_role: string

newsletter-participants.update.user

user: string

newsletter-settings.update

update: object

newsletter-settings.update.id

id: string

newsletter-settings.update.update

update: any

newsletter.reaction

reaction: object

Newsletter-related events

newsletter.reaction.id

id: string

newsletter.reaction.reaction

reaction: object

newsletter.reaction.reaction.code?

optional code: string

newsletter.reaction.reaction.count?

optional count: number

newsletter.reaction.reaction.removed?

optional removed: boolean

newsletter.reaction.server_id

server_id: string

newsletter.view

view: object

newsletter.view.count

count: number

newsletter.view.id

id: string

newsletter.view.server_id

server_id: string

presence.update

update: object

presence of contact in a chat updated

presence.update.id

id: string

presence.update.presences

presences: object

Index Signature

  • Type declaration call

Type: BaileysEvent

Source: https://baileys.wiki/docs/api/type-aliases/BaileysEvent

BaileysEvent: keyof BaileysEventMap

Defined in: src/Types/Events.ts:125


Type: AuthenticationCreds

Source: https://baileys.wiki/docs/api/type-aliases/AuthenticationCreds

On this page

AuthenticationCreds: SignalCreds & object

Defined in: src/Types/Auth.ts:48

Type declaration

account?

optional account: IADVSignedDeviceIdentity

accountSettings

accountSettings: AccountSettings

accountSyncCounter

accountSyncCounter: number

number of times history & app state has been synced

additionalData?

optional additionalData: any

advSecretKey

advSecretKey: string

firstUnuploadedPreKeyId

firstUnuploadedPreKeyId: number

lastAccountSyncTimestamp?

optional lastAccountSyncTimestamp: number

lastPropHash

lastPropHash: string | undefined

me?

optional me: Contact

myAppStateKeyId?

optional myAppStateKeyId: string

nextPreKeyId

nextPreKeyId: number

noiseKey

readonly noiseKey: KeyPair

pairingCode

pairingCode: string | undefined

pairingEphemeralKeyPair

readonly pairingEphemeralKeyPair: KeyPair

platform?

optional platform: string

processedHistoryMessages

processedHistoryMessages: MinimalMessage[]

registered

registered: boolean

routingInfo

routingInfo: Buffer | undefined

signalIdentities?

optional signalIdentities: SignalIdentity[]

  • Type declaration account?
  • accountSettings
  • accountSyncCounter
  • additionalData?
  • advSecretKey
  • firstUnuploadedPreKeyId
  • lastAccountSyncTimestamp?
  • lastPropHash
  • me?
  • myAppStateKeyId?
  • nextPreKeyId
  • noiseKey
  • pairingCode
  • pairingEphemeralKeyPair
  • platform?
  • processedHistoryMessages
  • registered
  • routingInfo
  • signalIdentities?

Type: AuthenticationState

Source: https://baileys.wiki/docs/api/type-aliases/AuthenticationState

On this page

AuthenticationState: object

Defined in: src/Types/Auth.ts:112

Type declaration

creds

creds: AuthenticationCreds

keys

keys: SignalKeyStore

  • Type declaration creds
  • keys

Type: WASocket

Source: https://baileys.wiki/docs/api/type-aliases/WASocket

WASocket: ReturnType<typeof makeWASocket>

Defined in: src/index.ts:11


Type: SocketConfig

Source: https://baileys.wiki/docs/api/type-aliases/SocketConfig

On this page

SocketConfig: object

Defined in: src/Types/Socket.ts:32

Type declaration

agent?

optional agent: Agent

proxy agent

appStateMacVerification

appStateMacVerification: object

verify app state MACs

appStateMacVerification.patch

patch: boolean

appStateMacVerification.snapshot

snapshot: boolean

auth

auth: AuthenticationState

provide an auth state object to maintain the auth state

browser

browser: WABrowserDescription

override browser config

cachedGroupMetadata()

cachedGroupMetadata: (jid) => Promise<GroupMetadata | undefined>

cached group metadata, use to prevent redundant requests to WA & speed up msg sending

Parameters

jid

string

Returns

Promise<GroupMetadata | undefined>

callOfferCache?

optional callOfferCache: CacheStore

cache to store call offers

connectTimeoutMs

connectTimeoutMs: number

Fails the connection if the socket times out in this interval

countryCode

countryCode: string

alphanumeric country code (USA -> US) for the number used

customUploadHosts

customUploadHosts: MediaConnInfo["hosts"]

custom upload hosts to upload media to

defaultQueryTimeoutMs

defaultQueryTimeoutMs: number | undefined

Default timeout for queries, undefined for no timeout

emitOwnEvents

emitOwnEvents: boolean

should events be emitted for actions done by this socket connection

enableAutoSessionRecreation

enableAutoSessionRecreation: boolean

Enable automatic session recreation for failed messages

enableRecentMessageCache

enableRecentMessageCache: boolean

Enable recent message caching for retry handling

fetchAgent?

optional fetchAgent: Agent

agent used for fetch requests -- uploading/downloading media

fireInitQueries

fireInitQueries: boolean

Should baileys fire init queries automatically, default true

generateHighQualityLinkPreview

generateHighQualityLinkPreview: boolean

generate a high quality link preview, entails uploading the jpegThumbnail to WA

getMessage()

getMessage: (key) => Promise<IMessage | undefined>

fetch a message from your store implement this so that messages failed to send (solves the "this message can take a while" issue) can be retried

Parameters

key

WAMessageKey

Returns

Promise<IMessage | undefined>

keepAliveIntervalMs

keepAliveIntervalMs: number

ping-pong interval for WS connection

linkPreviewImageThumbnailWidth

linkPreviewImageThumbnailWidth: number

width for link preview images

logger

logger: ILogger

logger

makeSignalRepository()

makeSignalRepository: (auth, logger, pnToLIDFunc?) => SignalRepositoryWithLIDStore

Parameters

auth

SignalAuthState

logger

ILogger

pnToLIDFunc?

(jids) => Promise<LIDMapping[] | undefined>

Returns

SignalRepositoryWithLIDStore

markOnlineOnConnect

markOnlineOnConnect: boolean

marks the client as online whenever the socket successfully connects

maxMsgRetryCount

maxMsgRetryCount: number

max retry count

mediaCache?

optional mediaCache: CacheStore

provide a cache to store media, so does not have to be re-uploaded

mobile?

optional mobile: boolean

should baileys use the mobile api instead of the multi device api

Deprecated

This feature has been removed

msgRetryCounterCache?

optional msgRetryCounterCache: CacheStore

map to store the retry counts for failed messages; used to determine whether to retry a message or not

options

options: RequestInit

options for HTTP fetch requests

patchMessageBeforeSending()

patchMessageBeforeSending: (msg, recipientJids?) => Promise<PatchedMessageWithRecipientJID[] | PatchedMessageWithRecipientJID> | PatchedMessageWithRecipientJID[] | PatchedMessageWithRecipientJID

Optionally patch the message before sending out

Parameters

msg

IMessage

recipientJids?

string[]

Returns

Promise<PatchedMessageWithRecipientJID[] | PatchedMessageWithRecipientJID> | PatchedMessageWithRecipientJID[] | PatchedMessageWithRecipientJID

placeholderResendCache?

optional placeholderResendCache: CacheStore

cache to track placeholder resends

printQRInTerminal?

optional printQRInTerminal: boolean

should the QR be printed in the terminal

Deprecated

This feature has been removed

qrTimeout?

optional qrTimeout: number

time to wait for the generation of the next QR in ms

retryRequestDelayMs

retryRequestDelayMs: number

time to wait between sending new retry requests

shouldIgnoreJid()

shouldIgnoreJid: (jid) => boolean | undefined

Returns if a jid should be ignored, no event for that jid will be triggered. Messages from that jid will also not be decrypted

Parameters

jid

string

Returns

boolean | undefined

shouldSyncHistoryMessage()

shouldSyncHistoryMessage: (msg) => boolean

manage history processing with this control; by default will sync up everything

Parameters

msg

IHistorySyncNotification

Returns

boolean

syncFullHistory

syncFullHistory: boolean

Should Baileys ask the phone for full history, will be received async

transactionOpts

transactionOpts: TransactionCapabilityOptions

transaction capability options for SignalKeyStore

userDevicesCache?

optional userDevicesCache: PossiblyExtendedCacheStore

provide a cache to store a user's device list

version

version: WAVersion

version to connect with

waWebSocketUrl

waWebSocketUrl: string | URL

the WS url to connect to WA

  • Type declaration agent?
  • appStateMacVerification
  • auth
  • browser
  • cachedGroupMetadata()
  • callOfferCache?
  • connectTimeoutMs
  • countryCode
  • customUploadHosts
  • defaultQueryTimeoutMs
  • emitOwnEvents
  • enableAutoSessionRecreation
  • enableRecentMessageCache
  • fetchAgent?
  • fireInitQueries
  • generateHighQualityLinkPreview
  • getMessage()
  • keepAliveIntervalMs
  • linkPreviewImageThumbnailWidth
  • logger
  • makeSignalRepository()
  • markOnlineOnConnect
  • maxMsgRetryCount
  • mediaCache?
  • mobile?
  • msgRetryCounterCache?
  • options
  • patchMessageBeforeSending()
  • placeholderResendCache?
  • printQRInTerminal?
  • qrTimeout?
  • retryRequestDelayMs
  • shouldIgnoreJid()
  • shouldSyncHistoryMessage()
  • syncFullHistory
  • transactionOpts
  • userDevicesCache?
  • version
  • waWebSocketUrl

Type: UserFacingSocketConfig

Source: https://baileys.wiki/docs/api/type-aliases/UserFacingSocketConfig

On this page

UserFacingSocketConfig: Partial<SocketConfig> & object

Defined in: src/Types/index.ts:17

Type declaration

auth

auth: AuthenticationState

  • Type declaration auth

Functions


Function: generateWAMessage

Source: https://baileys.wiki/docs/api/functions/generateWAMessage

On this page

generateWAMessage(jid, content, options): Promise<WAMessage>

Defined in: src/Utils/messages.ts:707

Parameters

jid

string

content

AnyMessageContent

options

MessageGenerationOptions

Returns

Promise<WAMessage>

  • Parameters jid

  • content

  • options

  • Returns


Function: generateWAMessageContent

Source: https://baileys.wiki/docs/api/functions/generateWAMessageContent

On this page

generateWAMessageContent(message, options): Promise<Message>

Defined in: src/Utils/messages.ts:369

Parameters

message

AnyMessageContent

options

MessageContentGenerationOptions

Returns

Promise<Message>

  • Parameters message

  • options

  • Returns


Function: generateWAMessageFromContent

Source: https://baileys.wiki/docs/api/functions/generateWAMessageFromContent

On this page

generateWAMessageFromContent(jid, message, options): WAMessage

Defined in: src/Utils/messages.ts:623

Parameters

jid

string

message

IMessage

options

MessageGenerationOptionsFromContent

Returns

WAMessage

  • Parameters jid

  • message

  • options

  • Returns


Function: extractMessageContent

Source: https://baileys.wiki/docs/api/functions/extractMessageContent

On this page

extractMessageContent(content): undefined | IMessage

Defined in: src/Utils/messages.ts:762

Extract the true message content from a message Eg. extracts the inner message from a disappearing message/view once message

Parameters

content

undefined | null | IMessage

Returns

undefined | IMessage

  • Parameters content

  • Returns


Function: getContentType

Source: https://baileys.wiki/docs/api/functions/getContentType

On this page

getContentType(content): undefined | keyof IMessage

Defined in: src/Utils/messages.ts:715

Get the key to access the true type of content

Parameters

content

undefined | IMessage

Returns

undefined | keyof IMessage

  • Parameters content

  • Returns


Function: normalizeMessageContent

Source: https://baileys.wiki/docs/api/functions/normalizeMessageContent

On this page

normalizeMessageContent(content): undefined | IMessage

Defined in: src/Utils/messages.ts:729

Normalizes ephemeral, view once messages to regular message content Eg. image messages in ephemeral messages, in view once messages etc.

Parameters

content

undefined | null | IMessage

Returns

undefined | IMessage

  • Parameters content

  • Returns


Function: downloadMediaMessage

Source: https://baileys.wiki/docs/api/functions/downloadMediaMessage

On this page

downloadMediaMessage<Type>(message, type, options, ctx?): Promise<Type extends "buffer" ? Buffer<ArrayBufferLike> : Transform>

Defined in: src/Utils/messages.ts:985

Downloads the given message. Throws an error if it's not a media message

Type Parameters

Type extends "buffer" | "stream"

Parameters

message

WAMessage

type

Type

options

MediaDownloadOptions

ctx?

DownloadMediaMessageContext

Returns

Promise<Type extends "buffer" ? Buffer<ArrayBufferLike> : Transform>

  • Type Parameters

  • Parameters message

  • type

  • options

  • ctx?

  • Returns


Function: downloadContentFromMessage

Source: https://baileys.wiki/docs/api/functions/downloadContentFromMessage

On this page

downloadContentFromMessage(__namedParameters, type, opts): Promise<Transform>

Defined in: src/Utils/messages-media.ts:506

Parameters

__namedParameters

DownloadableMessage

type

"ppic" | "product" | "image" | "video" | "sticker" | "thumbnail-document" | "audio" | "thumbnail-image" | "biz-cover-photo" | "thumbnail-video" | "thumbnail-link" | "gif" | "md-app-state" | "md-msg-hist" | "document" | "ptt" | "product-catalog-image" | "payment-bg-image" | "ptv"

opts

MediaDownloadOptions = {}

Returns

Promise<Transform>

  • Parameters __namedParameters

  • type

  • opts

  • Returns


Function: prepareWAMessageMedia

Source: https://baileys.wiki/docs/api/functions/prepareWAMessageMedia

On this page

prepareWAMessageMedia(message, options): Promise<Message>

Defined in: src/Utils/messages.ts:116

Parameters

message

AnyMediaMessageContent

options

MessageContentGenerationOptions

Returns

Promise<Message>

  • Parameters message

  • options

  • Returns


Function: extractImageThumb

Source: https://baileys.wiki/docs/api/functions/extractImageThumb

On this page

extractImageThumb(bufferOrFilePath, width): Promise<{ buffer: any; original: { height: any; width: any; }; }>

Defined in: src/Utils/messages-media.ts:134

Parameters

bufferOrFilePath

string | Buffer<ArrayBufferLike> | Readable

width

number = 32

Returns

Promise<{ buffer: any; original: { height: any; width: any; }; }>

  • Parameters bufferOrFilePath

  • width

  • Returns


Function: generateThumbnail

Source: https://baileys.wiki/docs/api/functions/generateThumbnail

On this page

generateThumbnail(file, mediaType, options): Promise<{ originalImageDimensions: undefined | { height: number; width: number; }; thumbnail: undefined | string; }>

Defined in: src/Utils/messages-media.ts:327

generates a thumbnail for a given media, if required

Parameters

file

string

mediaType

"image" | "video"

options

logger?

ILogger

Returns

Promise<{ originalImageDimensions: undefined | { height: number; width: number; }; thumbnail: undefined | string; }>

  • Parameters file

  • mediaType

  • options

  • Returns


Function: generateProfilePicture

Source: https://baileys.wiki/docs/api/functions/generateProfilePicture

On this page

generateProfilePicture(mediaUpload, dimensions?): Promise<{ img: Buffer<ArrayBufferLike>; }>

Defined in: src/Utils/messages-media.ts:175

Parameters

mediaUpload

WAMediaUpload

dimensions?

height

number

width

number

Returns

Promise<{ img: Buffer<ArrayBufferLike>; }>

  • Parameters mediaUpload

  • dimensions?

  • Returns


Function: getMediaKeys

Source: https://baileys.wiki/docs/api/functions/getMediaKeys

On this page

getMediaKeys(buffer, mediaType): Promise<MediaDecryptionKeyInfo>

Defined in: src/Utils/messages-media.ts:95

generates all the keys required to encrypt/decrypt & sign a media message

Parameters

buffer

undefined | null | string | Uint8Array<ArrayBufferLike>

mediaType

"ppic" | "product" | "image" | "video" | "sticker" | "thumbnail-document" | "audio" | "thumbnail-image" | "biz-cover-photo" | "thumbnail-video" | "thumbnail-link" | "gif" | "md-app-state" | "md-msg-hist" | "document" | "ptt" | "product-catalog-image" | "payment-bg-image" | "ptv"

Returns

Promise<MediaDecryptionKeyInfo>

  • Parameters buffer

  • mediaType

  • Returns


Function: encryptedStream

Source: https://baileys.wiki/docs/api/functions/encryptedStream

On this page

encryptedStream(media, mediaType, __namedParameters): Promise<{ encFilePath: string; fileEncSha256: Buffer<ArrayBufferLike>; fileLength: number; fileSha256: Buffer<ArrayBufferLike>; mac: Buffer<ArrayBuffer>; mediaKey: Buffer<ArrayBufferLike>; originalFilePath: undefined | string; }>

Defined in: src/Utils/messages-media.ts:384

Parameters

media

WAMediaUpload

mediaType

"ppic" | "product" | "image" | "video" | "sticker" | "thumbnail-document" | "audio" | "thumbnail-image" | "biz-cover-photo" | "thumbnail-video" | "thumbnail-link" | "gif" | "md-app-state" | "md-msg-hist" | "document" | "ptt" | "product-catalog-image" | "payment-bg-image" | "ptv"

__namedParameters

EncryptedStreamOptions = {}

Returns

Promise<{ encFilePath: string; fileEncSha256: Buffer<ArrayBufferLike>; fileLength: number; fileSha256: Buffer<ArrayBufferLike>; mac: Buffer<ArrayBuffer>; mediaKey: Buffer<ArrayBufferLike>; originalFilePath: undefined | string; }>

  • Parameters media

  • mediaType

  • __namedParameters

  • Returns


Function: jidDecode

Source: https://baileys.wiki/docs/api/functions/jidDecode

On this page

jidDecode(jid): undefined | FullJid

Defined in: src/WABinary/jid-utils.ts:55

Parameters

jid

undefined | string

Returns

undefined | FullJid

  • Parameters jid

  • Returns


Function: jidEncode

Source: https://baileys.wiki/docs/api/functions/jidEncode

On this page

jidEncode(user, server, device?, agent?): string

Defined in: src/WABinary/jid-utils.ts:51

Parameters

user

null | string | number

server

JidServer

device?

number

agent?

number

Returns

string

  • Parameters user

  • server

  • device?

  • agent?

  • Returns


Function: jidNormalizedUser

Source: https://baileys.wiki/docs/api/functions/jidNormalizedUser

On this page

jidNormalizedUser(jid): string

Defined in: src/WABinary/jid-utils.ts:113

Parameters

jid

undefined | string

Returns

string

  • Parameters jid

  • Returns


Function: isJidGroup

Source: https://baileys.wiki/docs/api/functions/isJidGroup

On this page

isJidGroup(jid): undefined | boolean

Defined in: src/WABinary/jid-utils.ts:99

is the jid a group

Parameters

jid

undefined | string

Returns

undefined | boolean

  • Parameters jid

  • Returns


Function: isJidBroadcast

Source: https://baileys.wiki/docs/api/functions/isJidBroadcast

On this page

isJidBroadcast(jid): undefined | boolean

Defined in: src/WABinary/jid-utils.ts:97

is the jid a broadcast

Parameters

jid

undefined | string

Returns

undefined | boolean

  • Parameters jid

  • Returns


Function: isJidStatusBroadcast

Source: https://baileys.wiki/docs/api/functions/isJidStatusBroadcast

On this page

isJidStatusBroadcast(jid): jid is "status@broadcast"

Defined in: src/WABinary/jid-utils.ts:101

is the jid the status broadcast

Parameters

jid

string

Returns

jid is "status@broadcast"

  • Parameters jid

  • Returns


Function: areJidsSameUser

Source: https://baileys.wiki/docs/api/functions/areJidsSameUser

On this page

areJidsSameUser(jid1, jid2): boolean

Defined in: src/WABinary/jid-utils.ts:88

is the jid a user

Parameters

jid1

undefined | string

jid2

undefined | string

Returns

boolean

  • Parameters jid1

  • jid2

  • Returns


Function: isLidUser

Source: https://baileys.wiki/docs/api/functions/isLidUser

On this page

isLidUser(jid): undefined | boolean

Defined in: src/WABinary/jid-utils.ts:95

is the jid a LID

Parameters

jid

undefined | string

Returns

undefined | boolean

  • Parameters jid

  • Returns


Function: downloadAndProcessHistorySyncNotification

Source: https://baileys.wiki/docs/api/functions/downloadAndProcessHistorySyncNotification

On this page

downloadAndProcessHistorySyncNotification(msg, options): Promise<{ chats: Chat[]; contacts: Contact[]; messages: WAMessage[]; progress: undefined | null | number; syncType: undefined | null | HistorySyncType; }>

Defined in: src/Utils/history.ts:95

Parameters

msg

IHistorySyncNotification

options

RequestInit

Returns

Promise<{ chats: Chat[]; contacts: Contact[]; messages: WAMessage[]; progress: undefined | null | number; syncType: undefined | null | HistorySyncType; }>

  • Parameters msg

  • options

  • Returns


Function: processHistoryMessage

Source: https://baileys.wiki/docs/api/functions/processHistoryMessage

On this page

processHistoryMessage(item): object

Defined in: src/Utils/history.ts:28

Parameters

item

IHistorySync

Returns

object

chats

chats: Chat[]

contacts

contacts: Contact[]

messages

messages: WAMessage[]

progress

progress: undefined | null | number = item.progress

syncType

syncType: undefined | null | HistorySyncType = item.syncType

  • Parameters item

  • Returns chats

  • contacts

  • messages

  • progress

  • syncType


Function: getHistoryMsg

Source: https://baileys.wiki/docs/api/functions/getHistoryMsg

On this page

getHistoryMsg(message): IHistorySyncNotification

Defined in: src/Utils/history.ts:109

Parameters

message

IMessage

Returns

IHistorySyncNotification

  • Parameters message

  • Returns


Function: makeWASocket

Source: https://baileys.wiki/docs/api/functions/makeWASocket

On this page

makeWASocket(config): object

Defined in: src/Socket/index.ts:6

Parameters

config

UserFacingSocketConfig

Returns

object

addChatLabel()

addChatLabel: (jid, labelId) => Promise<void>

Adds label for the chats

Parameters

jid

string

labelId

string

Returns

Promise<void>

addLabel()

addLabel: (jid, labels) => Promise<void>

Adds label

Parameters

jid

string

labels

LabelActionBody

Returns

Promise<void>

addMessageLabel()

addMessageLabel: (jid, messageId, labelId) => Promise<void>

Adds label for the message

Parameters

jid

string

messageId

string

labelId

string

Returns

Promise<void>

addOrEditContact()

addOrEditContact: (jid, contact) => Promise<void>

Add or Edit Contact

Parameters

jid

string

contact

IContactAction

Returns

Promise<void>

addOrEditQuickReply()

addOrEditQuickReply: (quickReply) => Promise<void>

Add or Edit Quick Reply

Parameters

quickReply

QuickReplyAction

Returns

Promise<void>

appPatch()

appPatch: (patchCreate) => Promise<void>

Parameters

patchCreate

WAPatchCreate

Returns

Promise<void>

assertSessions()

assertSessions: (jids, force?) => Promise<boolean>

Parameters

jids

string[]

force?

boolean

Returns

Promise<boolean>

authState

authState: object

authState.creds

creds: AuthenticationCreds

authState.keys

keys: SignalKeyStoreWithTransaction

chatModify()

chatModify: (mod, jid) => Promise<void>

modify a chat -- mark unread, read etc. lastMessages must be sorted in reverse chronologically requires the last messages till the last message received; required for archive & unread

Parameters

mod

ChatModification

jid

string

Returns

Promise<void>

cleanDirtyBits()

cleanDirtyBits: (type, fromTimestamp?) => Promise<void>

Parameters

type

"account_sync" | "groups"

fromTimestamp?

string | number

Returns

Promise<void>

communityAcceptInvite()

communityAcceptInvite: (code) => Promise<undefined | string>

Parameters

code

string

Returns

Promise<undefined | string>

communityAcceptInviteV4()

communityAcceptInviteV4: (...args) => Promise<any>

accept a CommunityInviteMessage

Parameters

args

...[string | WAMessageKey, IGroupInviteMessage]

Returns

Promise<any>

communityCreate()

communityCreate: (subject, body) => Promise<null | GroupMetadata>

Parameters

subject

string

body

string

Returns

Promise<null | GroupMetadata>

communityCreateGroup()

communityCreateGroup: (subject, participants, parentCommunityJid) => Promise<null | GroupMetadata>

Parameters

subject

string

participants

string[]

parentCommunityJid

string

Returns

Promise<null | GroupMetadata>

communityFetchAllParticipating()

communityFetchAllParticipating: () => Promise<{}>

Returns

Promise<{}>

communityFetchLinkedGroups()

communityFetchLinkedGroups: (jid) => Promise<{ communityJid: string; isCommunity: boolean; linkedGroups: object[]; }>

Parameters

jid

string

Returns

Promise<{ communityJid: string; isCommunity: boolean; linkedGroups: object[]; }>

communityGetInviteInfo()

communityGetInviteInfo: (code) => Promise<GroupMetadata>

Parameters

code

string

Returns

Promise<GroupMetadata>

communityInviteCode()

communityInviteCode: (jid) => Promise<undefined | string>

Parameters

jid

string

Returns

Promise<undefined | string>

communityJoinApprovalMode()

communityJoinApprovalMode: (jid, mode) => Promise<void>

Parameters

jid

string

mode

"on" | "off"

Returns

Promise<void>

communityLeave()

communityLeave: (id) => Promise<void>

Parameters

id

string

Returns

Promise<void>

communityLinkGroup()

communityLinkGroup: (groupJid, parentCommunityJid) => Promise<void>

Parameters

groupJid

string

parentCommunityJid

string

Returns

Promise<void>

communityMemberAddMode()

communityMemberAddMode: (jid, mode) => Promise<void>

Parameters

jid

string

mode

"all_member_add" | "admin_add"

Returns

Promise<void>

communityMetadata()

communityMetadata: (jid) => Promise<GroupMetadata>

Parameters

jid

string

Returns

Promise<GroupMetadata>

communityParticipantsUpdate()

communityParticipantsUpdate: (jid, participants, action) => Promise<object[]>

Parameters

jid

string

participants

string[]

action

ParticipantAction

Returns

Promise<object[]>

communityRequestParticipantsList()

communityRequestParticipantsList: (jid) => Promise<object[]>

Parameters

jid

string

Returns

Promise<object[]>

communityRequestParticipantsUpdate()

communityRequestParticipantsUpdate: (jid, participants, action) => Promise<object[]>

Parameters

jid

string

participants

string[]

action

"reject" | "approve"

Returns

Promise<object[]>

communityRevokeInvite()

communityRevokeInvite: (jid) => Promise<undefined | string>

Parameters

jid

string

Returns

Promise<undefined | string>

communityRevokeInviteV4()

communityRevokeInviteV4: (communityJid, invitedJid) => Promise<boolean>

revoke a v4 invite for someone

Parameters

communityJid

string

community jid

invitedJid

string

jid of person you invited

Returns

Promise<boolean>

true if successful

communitySettingUpdate()

communitySettingUpdate: (jid, setting) => Promise<void>

Parameters

jid

string

setting

"announcement" | "locked" | "not_announcement" | "unlocked"

Returns

Promise<void>

communityToggleEphemeral()

communityToggleEphemeral: (jid, ephemeralExpiration) => Promise<void>

Parameters

jid

string

ephemeralExpiration

number

Returns

Promise<void>

communityUnlinkGroup()

communityUnlinkGroup: (groupJid, parentCommunityJid) => Promise<void>

Parameters

groupJid

string

parentCommunityJid

string

Returns

Promise<void>

communityUpdateDescription()

communityUpdateDescription: (jid, description?) => Promise<void>

Parameters

jid

string

description?

string

Returns

Promise<void>

communityUpdateSubject()

communityUpdateSubject: (jid, subject) => Promise<void>

Parameters

jid

string

subject

string

Returns

Promise<void>

createCallLink: (type, event?, timeoutMs?) => Promise<undefined | string>

Parameters

type

"video" | "audio"

event? startTime

number

timeoutMs?

number

Returns

Promise<undefined | string>

createParticipantNodes()

createParticipantNodes: (recipientJids, message, extraAttrs?, dsmMessage?) => Promise<{ nodes: BinaryNode[]; shouldIncludeDeviceIdentity: boolean; }>

Parameters

recipientJids

string[]

message

IMessage

extraAttrs? dsmMessage?

IMessage

Returns

Promise<{ nodes: BinaryNode[]; shouldIncludeDeviceIdentity: boolean; }>

digestKeyBundle()

digestKeyBundle: () => Promise<void>

Returns

Promise<void>

end()

end: (error) => void

Parameters

error

undefined | Error

Returns

void

ev

ev: BaileysBufferableEventEmitter

executeUSyncQuery()

executeUSyncQuery: (usyncQuery) => Promise<undefined | USyncQueryResult>

Parameters

usyncQuery

USyncQuery

Returns

Promise<undefined | USyncQueryResult>

fetchBlocklist()

fetchBlocklist: () => Promise<(undefined | string)[]>

Returns

Promise<(undefined | string)[]>

fetchDisappearingDuration()

fetchDisappearingDuration: (...jids) => Promise<undefined | USyncQueryResultList[]>

Parameters

jids

...string[]

Returns

Promise<undefined | USyncQueryResultList[]>

fetchMessageHistory()

fetchMessageHistory: (count, oldestMsgKey, oldestMsgTimestamp) => Promise<string>

Parameters

count

number

oldestMsgKey

WAMessageKey

oldestMsgTimestamp

number | Long

Returns

Promise<string>

fetchPrivacySettings()

fetchPrivacySettings: (force) => Promise<{}>

Parameters

force

boolean = false

Returns

Promise<{}>

fetchStatus()

fetchStatus: (...jids) => Promise<undefined | USyncQueryResultList[]>

Parameters

jids

...string[]

Returns

Promise<undefined | USyncQueryResultList[]>

generateMessageTag()

generateMessageTag: () => string

Returns

string

getBotListV2()

getBotListV2: () => Promise<BotListInfo[]>

Returns

Promise<BotListInfo[]>

getBusinessProfile()

getBusinessProfile: (jid) => Promise<void | WABusinessProfile>

Parameters

jid

string

Returns

Promise<void | WABusinessProfile>

getCatalog()

getCatalog: (__namedParameters) => Promise<{ nextPageCursor: undefined | string; products: Product[]; }>

Parameters

__namedParameters

GetCatalogOptions

Returns

Promise<{ nextPageCursor: undefined | string; products: Product[]; }>

getCollections()

getCollections: (jid?, limit) => Promise<{ collections: CatalogCollection[]; }>

Parameters

jid?

string

limit?

number = 51

Returns

Promise<{ collections: CatalogCollection[]; }>

getOrderDetails()

getOrderDetails: (orderId, tokenBase64) => Promise<OrderDetails>

Parameters

orderId

string

tokenBase64

string

Returns

Promise<OrderDetails>

getPrivacyTokens()

getPrivacyTokens: (jids) => Promise<any>

Parameters

jids

string[]

Returns

Promise<any>

getUSyncDevices()

getUSyncDevices: (jids, useCache, ignoreZeroDevices) => Promise<DeviceWithJid[]>

Fetch all the devices we've to send a message to

Parameters

jids

string[]

useCache

boolean

ignoreZeroDevices

boolean

Returns

Promise<DeviceWithJid[]>

groupAcceptInvite()

groupAcceptInvite: (code) => Promise<undefined | string>

Parameters

code

string

Returns

Promise<undefined | string>

groupAcceptInviteV4()

groupAcceptInviteV4: (...args) => Promise<any>

accept a GroupInviteMessage

Parameters

args

...[string | WAMessageKey, IGroupInviteMessage]

Returns

Promise<any>

groupCreate()

groupCreate: (subject, participants) => Promise<GroupMetadata>

Parameters

subject

string

participants

string[]

Returns

Promise<GroupMetadata>

groupFetchAllParticipating()

groupFetchAllParticipating: () => Promise<{}>

Returns

Promise<{}>

groupGetInviteInfo()

groupGetInviteInfo: (code) => Promise<GroupMetadata>

Parameters

code

string

Returns

Promise<GroupMetadata>

groupInviteCode()

groupInviteCode: (jid) => Promise<undefined | string>

Parameters

jid

string

Returns

Promise<undefined | string>

groupJoinApprovalMode()

groupJoinApprovalMode: (jid, mode) => Promise<void>

Parameters

jid

string

mode

"on" | "off"

Returns

Promise<void>

groupLeave()

groupLeave: (id) => Promise<void>

Parameters

id

string

Returns

Promise<void>

groupMemberAddMode()

groupMemberAddMode: (jid, mode) => Promise<void>

Parameters

jid

string

mode

"all_member_add" | "admin_add"

Returns

Promise<void>

groupMetadata()

groupMetadata: (jid) => Promise<GroupMetadata>

Parameters

jid

string

Returns

Promise<GroupMetadata>

groupParticipantsUpdate()

groupParticipantsUpdate: (jid, participants, action) => Promise<object[]>

Parameters

jid

string

participants

string[]

action

ParticipantAction

Returns

Promise<object[]>

groupRequestParticipantsList()

groupRequestParticipantsList: (jid) => Promise<object[]>

Parameters

jid

string

Returns

Promise<object[]>

groupRequestParticipantsUpdate()

groupRequestParticipantsUpdate: (jid, participants, action) => Promise<object[]>

Parameters

jid

string

participants

string[]

action

"reject" | "approve"

Returns

Promise<object[]>

groupRevokeInvite()

groupRevokeInvite: (jid) => Promise<undefined | string>

Parameters

jid

string

Returns

Promise<undefined | string>

groupRevokeInviteV4()

groupRevokeInviteV4: (groupJid, invitedJid) => Promise<boolean>

revoke a v4 invite for someone

Parameters

groupJid

string

group jid

invitedJid

string

jid of person you invited

Returns

Promise<boolean>

true if successful

groupSettingUpdate()

groupSettingUpdate: (jid, setting) => Promise<void>

Parameters

jid

string

setting

"announcement" | "locked" | "not_announcement" | "unlocked"

Returns

Promise<void>

groupToggleEphemeral()

groupToggleEphemeral: (jid, ephemeralExpiration) => Promise<void>

Parameters

jid

string

ephemeralExpiration

number

Returns

Promise<void>

groupUpdateDescription()

groupUpdateDescription: (jid, description?) => Promise<void>

Parameters

jid

string

description?

string

Returns

Promise<void>

groupUpdateSubject()

groupUpdateSubject: (jid, subject) => Promise<void>

Parameters

jid

string

subject

string

Returns

Promise<void>

logger

logger: ILogger = config.logger

logout()

logout: (msg?) => Promise<void>

logout & invalidate connection

Parameters

msg?

string

Returns

Promise<void>

messageRetryManager

messageRetryManager: null | MessageRetryManager

newsletterAdminCount()

newsletterAdminCount: (jid) => Promise<number>

Parameters

jid

string

Returns

Promise<number>

newsletterChangeOwner()

newsletterChangeOwner: (jid, newOwnerJid) => Promise<void>

Parameters

jid

string

newOwnerJid

string

Returns

Promise<void>

newsletterCreate()

newsletterCreate: (name, description?) => Promise<NewsletterMetadata>

Parameters

name

string

description?

string

Returns

Promise<NewsletterMetadata>

newsletterDelete()

newsletterDelete: (jid) => Promise<void>

Parameters

jid

string

Returns

Promise<void>

newsletterDemote()

newsletterDemote: (jid, userJid) => Promise<void>

Parameters

jid

string

userJid

string

Returns

Promise<void>

newsletterFetchMessages()

newsletterFetchMessages: (jid, count, since, after) => Promise<any>

Parameters

jid

string

count

number

since

number

after

number

Returns

Promise<any>

newsletterFollow()

newsletterFollow: (jid) => Promise<unknown>

Parameters

jid

string

Returns

Promise<unknown>

newsletterMetadata()

newsletterMetadata: (type, key) => Promise<null | NewsletterMetadata>

Parameters

type

"invite" | "jid"

key

string

Returns

Promise<null | NewsletterMetadata>

newsletterMute()

newsletterMute: (jid) => Promise<unknown>

Parameters

jid

string

Returns

Promise<unknown>

newsletterReactMessage()

newsletterReactMessage: (jid, serverId, reaction?) => Promise<void>

Parameters

jid

string

serverId

string

reaction?

string

Returns

Promise<void>

newsletterRemovePicture()

newsletterRemovePicture: (jid) => Promise<unknown>

Parameters

jid

string

Returns

Promise<unknown>

newsletterSubscribers()

newsletterSubscribers: (jid) => Promise<{ subscribers: number; }>

Parameters

jid

string

Returns

Promise<{ subscribers: number; }>

newsletterUnfollow()

newsletterUnfollow: (jid) => Promise<unknown>

Parameters

jid

string

Returns

Promise<unknown>

newsletterUnmute()

newsletterUnmute: (jid) => Promise<unknown>

Parameters

jid

string

Returns

Promise<unknown>

newsletterUpdate()

newsletterUpdate: (jid, updates) => Promise<unknown>

Parameters

jid

string

updates

NewsletterUpdate

Returns

Promise<unknown>

newsletterUpdateDescription()

newsletterUpdateDescription: (jid, description) => Promise<unknown>

Parameters

jid

string

description

string

Returns

Promise<unknown>

newsletterUpdateName()

newsletterUpdateName: (jid, name) => Promise<unknown>

Parameters

jid

string

name

string

Returns

Promise<unknown>

newsletterUpdatePicture()

newsletterUpdatePicture: (jid, content) => Promise<unknown>

Parameters

jid

string

content

WAMediaUpload

Returns

Promise<unknown>

onUnexpectedError()

onUnexpectedError: (err, msg) => void

log & process any unexpected errors

Parameters

err

Error | Boom<any>

msg

string

Returns

void

onWhatsApp()

onWhatsApp: (...phoneNumber) => Promise<undefined | object[]>

Parameters

phoneNumber

...string[]

Returns

Promise<undefined | object[]>

presenceSubscribe()

presenceSubscribe: (toJid, tcToken?) => Promise<void>

Parameters

toJid

string

the jid to subscribe to

tcToken?

Buffer<ArrayBufferLike>

token for subscription, use if present

Returns

Promise<void>

processingMutex

processingMutex: object

processingMutex.mutex()

Type Parameters

T

Parameters code

() => T | Promise<T>

Returns

Promise<T>

productCreate()

productCreate: (create) => Promise<Product>

Parameters

create

ProductCreate

Returns

Promise<Product>

productDelete()

productDelete: (productIds) => Promise<{ deleted: number; }>

Parameters

productIds

string[]

Returns

Promise<{ deleted: number; }>

productUpdate()

productUpdate: (productId, update) => Promise<Product>

Parameters

productId

string

update

ProductUpdate

Returns

Promise<Product>

profilePictureUrl()

profilePictureUrl: (jid, type, timeoutMs?) => Promise<undefined | string>

fetch the profile picture of a user/group type = "preview" for a low res picture type = "image for the high res picture"

Parameters

jid

string

type

"image" | "preview"

timeoutMs?

number

Returns

Promise<undefined | string>

query()

query: (node, timeoutMs?) => Promise<any>

send a query, and wait for its response. auto-generates message ID if not provided

Parameters

node

BinaryNode

timeoutMs?

number

Returns

Promise<any>

readMessages()

readMessages: (keys) => Promise<void>

Bulk read messages. Keys can be from different chats & participants

Parameters

keys

WAMessageKey[]

Returns

Promise<void>

refreshMediaConn()

refreshMediaConn: (forceGet) => Promise<MediaConnInfo>

Parameters

forceGet

boolean = false

Returns

Promise<MediaConnInfo>

rejectCall()

rejectCall: (callId, callFrom) => Promise<void>

Parameters

callId

string

callFrom

string

Returns

Promise<void>

relayMessage()

relayMessage: (jid, message, __namedParameters) => Promise<string>

Parameters

jid

string

message

IMessage

__namedParameters

MessageRelayOptions

Returns

Promise<string>

removeChatLabel()

removeChatLabel: (jid, labelId) => Promise<void>

Removes label for the chat

Parameters

jid

string

labelId

string

Returns

Promise<void>

removeContact()

removeContact: (jid) => Promise<void>

Remove Contact

Parameters

jid

string

Returns

Promise<void>

removeCoverPhoto()

removeCoverPhoto: (id) => Promise<any>

Parameters

id

string

Returns

Promise<any>

removeMessageLabel()

removeMessageLabel: (jid, messageId, labelId) => Promise<void>

Removes label for the message

Parameters

jid

string

messageId

string

labelId

string

Returns

Promise<void>

removeProfilePicture()

removeProfilePicture: (jid) => Promise<void>

remove the profile picture for yourself or a group

Parameters

jid

string

Returns

Promise<void>

removeQuickReply()

removeQuickReply: (timestamp) => Promise<void>

Remove Quick Reply

Parameters

timestamp

string

Returns

Promise<void>

requestPairingCode()

requestPairingCode: (phoneNumber, customPairingCode?) => Promise<string>

Parameters

phoneNumber

string

customPairingCode?

string

Returns

Promise<string>

requestPlaceholderResend()

requestPlaceholderResend: (messageKey) => Promise<undefined | string>

Parameters

messageKey

WAMessageKey

Returns

Promise<undefined | string>

resyncAppState()

resyncAppState: (...args) => Promise<void>

Parameters

args

...[readonly ("critical_unblock_low" | "regular_high" | "regular_low" | "critical_block" | "regular")[], boolean]

Returns

Promise<void>

rotateSignedPreKey()

rotateSignedPreKey: () => Promise<void>

Returns

Promise<void>

sendMessage()

sendMessage: (jid, content, options) => Promise<undefined | WAMessage>

Parameters

jid

string

content

AnyMessageContent

options

MiscMessageGenerationOptions = {}

Returns

Promise<undefined | WAMessage>

sendMessageAck()

sendMessageAck: (__namedParameters, errorCode?) => Promise<void>

Parameters

__namedParameters

BinaryNode

errorCode?

number

Returns

Promise<void>

sendNode()

sendNode: (frame) => Promise<void>

send a binary node

Parameters

frame

BinaryNode

Returns

Promise<void>

sendPeerDataOperationMessage()

sendPeerDataOperationMessage: (pdoMessage) => Promise<string>

Parameters

pdoMessage

IPeerDataOperationRequestMessage

Returns

Promise<string>

sendPresenceUpdate()

sendPresenceUpdate: (type, toJid?) => Promise<void>

Parameters

type

WAPresence

toJid?

string

Returns

Promise<void>

sendRawMessage()

sendRawMessage: (data) => Promise<void>

send a raw buffer

Parameters

data

Uint8Array<ArrayBufferLike> | Buffer<ArrayBufferLike>

Returns

Promise<void>

sendReceipt()

sendReceipt: (jid, participant, messageIds, type) => Promise<void>

generic send receipt function used for receipts of phone call, read, delivery etc.

Parameters

jid

string

participant

undefined | string

messageIds

string[]

type

MessageReceiptType

Returns

Promise<void>

sendReceipts()

sendReceipts: (keys, type) => Promise<void>

Correctly bulk send receipts to multiple chats, participants

Parameters

keys

WAMessageKey[]

type

MessageReceiptType

Returns

Promise<void>

sendRetryRequest()

sendRetryRequest: (node, forceIncludeKeys) => Promise<void>

Parameters

node

BinaryNode

forceIncludeKeys

boolean = false

Returns

Promise<void>

sendWAMBuffer()

sendWAMBuffer: (wamBuffer) => Promise<any>

Parameters

wamBuffer

Buffer

Returns

Promise<any>

signalRepository

signalRepository: SignalRepositoryWithLIDStore

star()

star: (jid, messages, star) => Promise<void>

Star or Unstar a message

Parameters

jid

string

messages

object[]

star

boolean

Returns

Promise<void>

subscribeNewsletterUpdates()

subscribeNewsletterUpdates: (jid) => Promise<null | { duration: string; }>

Parameters

jid

string

Returns

Promise<null | { duration: string; }>

type

type: "md"

updateBlockStatus()

updateBlockStatus: (jid, action) => Promise<void>

Parameters

jid

string

action

"block" | "unblock"

Returns

Promise<void>

updateBussinesProfile()

updateBussinesProfile: (args) => Promise<any>

Parameters

args

UpdateBussinesProfileProps

Returns

Promise<any>

updateCallPrivacy()

updateCallPrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyCallValue

Returns

Promise<void>

updateCoverPhoto()

updateCoverPhoto: (photo) => Promise<number>

Parameters

photo

WAMediaUpload

Returns

Promise<number>

updateDefaultDisappearingMode()

updateDefaultDisappearingMode: (duration) => Promise<void>

Parameters

duration

number

Returns

Promise<void>

updateDisableLinkPreviewsPrivacy()

updateDisableLinkPreviewsPrivacy: (isPreviewsDisabled) => Promise<void>

Enable/Disable link preview privacy, not related to baileys link preview generation

Parameters

isPreviewsDisabled

boolean

Returns

Promise<void>

updateGroupsAddPrivacy()

updateGroupsAddPrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyGroupAddValue

Returns

Promise<void>

updateLastSeenPrivacy()

updateLastSeenPrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyValue

Returns

Promise<void>

updateMediaMessage()

updateMediaMessage: (message) => Promise<WAMessage>

Parameters

message

WAMessage

Returns

Promise<WAMessage>

updateMessagesPrivacy()

updateMessagesPrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyMessagesValue

Returns

Promise<void>

updateOnlinePrivacy()

updateOnlinePrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyOnlineValue

Returns

Promise<void>

updateProfileName()

updateProfileName: (name) => Promise<void>

Parameters

name

string

Returns

Promise<void>

updateProfilePicture()

updateProfilePicture: (jid, content, dimensions?) => Promise<void>

update the profile picture for yourself or a group

Parameters

jid

string

content

WAMediaUpload

dimensions? height

number

width

number

Returns

Promise<void>

updateProfilePicturePrivacy()

updateProfilePicturePrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyValue

Returns

Promise<void>

updateProfileStatus()

updateProfileStatus: (status) => Promise<void>

update the profile status for yourself

Parameters

status

string

Returns

Promise<void>

updateReadReceiptsPrivacy()

updateReadReceiptsPrivacy: (value) => Promise<void>

Parameters

value

WAReadReceiptsValue

Returns

Promise<void>

updateStatusPrivacy()

updateStatusPrivacy: (value) => Promise<void>

Parameters

value

WAPrivacyValue

Returns

Promise<void>

uploadPreKeys()

uploadPreKeys: (count, retryCount) => Promise<void>

generates and uploads a set of pre-keys to the server

Parameters

count

number = MIN_PREKEY_COUNT

retryCount

number = 0

Returns

Promise<void>

uploadPreKeysToServerIfRequired()

uploadPreKeysToServerIfRequired: () => Promise<void>

Returns

Promise<void>

upsertMessage()

upsertMessage: (...args) => Promise<void>

Parameters

args

...[WAMessage, MessageUpsertType]

Returns

Promise<void>

user

user: undefined | Contact

waitForConnectionUpdate()

waitForConnectionUpdate: (check, timeoutMs?) => Promise<void>

Waits for the connection to WA to reach a state

Parameters

check

(u) => Promise<undefined | boolean>

timeoutMs?

number

Returns

Promise<void>

waitForMessage()

waitForMessage: <T>(msgId, timeoutMs) => Promise<undefined | T>

Wait for a message with a certain tag to be received

Type Parameters

T

Parameters

msgId

string

the message tag to await

timeoutMs

timeout after which the promise will reject

undefined | number

Returns

Promise<undefined | T>

waitForSocketOpen()

waitForSocketOpen: () => Promise<void>

Returns

Promise<void>

wamBuffer

wamBuffer: BinaryInfo = publicWAMBuffer

waUploadToServer

waUploadToServer: WAMediaUploadFunction

ws

ws: WebSocketClient

  • Parameters config

  • Returns addChatLabel()

  • addLabel()

  • addMessageLabel()

  • addOrEditContact()

  • addOrEditQuickReply()

  • appPatch()

  • assertSessions()

  • authState

  • chatModify()

  • cleanDirtyBits()

  • communityAcceptInvite()

  • communityAcceptInviteV4()

  • communityCreate()

  • communityCreateGroup()

  • communityFetchAllParticipating()

  • communityFetchLinkedGroups()

  • communityGetInviteInfo()

  • communityInviteCode()

  • communityJoinApprovalMode()

  • communityLeave()

  • communityLinkGroup()

  • communityMemberAddMode()

  • communityMetadata()

  • communityParticipantsUpdate()

  • communityRequestParticipantsList()

  • communityRequestParticipantsUpdate()

  • communityRevokeInvite()

  • communityRevokeInviteV4()

  • communitySettingUpdate()

  • communityToggleEphemeral()

  • communityUnlinkGroup()

  • communityUpdateDescription()

  • communityUpdateSubject()

  • createCallLink()

  • createParticipantNodes()

  • digestKeyBundle()

  • end()

  • ev

  • executeUSyncQuery()

  • fetchBlocklist()

  • fetchDisappearingDuration()

  • fetchMessageHistory()

  • fetchPrivacySettings()

  • fetchStatus()

  • generateMessageTag()

  • getBotListV2()

  • getBusinessProfile()

  • getCatalog()

  • getCollections()

  • getOrderDetails()

  • getPrivacyTokens()

  • getUSyncDevices()

  • groupAcceptInvite()

  • groupAcceptInviteV4()

  • groupCreate()

  • groupFetchAllParticipating()

  • groupGetInviteInfo()

  • groupInviteCode()

  • groupJoinApprovalMode()

  • groupLeave()

  • groupMemberAddMode()

  • groupMetadata()

  • groupParticipantsUpdate()

  • groupRequestParticipantsList()

  • groupRequestParticipantsUpdate()

  • groupRevokeInvite()

  • groupRevokeInviteV4()

  • groupSettingUpdate()

  • groupToggleEphemeral()

  • groupUpdateDescription()

  • groupUpdateSubject()

  • logger

  • logout()

  • messageRetryManager

  • newsletterAdminCount()

  • newsletterChangeOwner()

  • newsletterCreate()

  • newsletterDelete()

  • newsletterDemote()

  • newsletterFetchMessages()

  • newsletterFollow()

  • newsletterMetadata()

  • newsletterMute()

  • newsletterReactMessage()

  • newsletterRemovePicture()

  • newsletterSubscribers()

  • newsletterUnfollow()

  • newsletterUnmute()

  • newsletterUpdate()

  • newsletterUpdateDescription()

  • newsletterUpdateName()

  • newsletterUpdatePicture()

  • onUnexpectedError()

  • onWhatsApp()

  • presenceSubscribe()

  • processingMutex

  • productCreate()

  • productDelete()

  • productUpdate()

  • profilePictureUrl()

  • query()

  • readMessages()

  • refreshMediaConn()

  • rejectCall()

  • relayMessage()

  • removeChatLabel()

  • removeContact()

  • removeCoverPhoto()

  • removeMessageLabel()

  • removeProfilePicture()

  • removeQuickReply()

  • requestPairingCode()

  • requestPlaceholderResend()

  • resyncAppState()

  • rotateSignedPreKey()

  • sendMessage()

  • sendMessageAck()

  • sendNode()

  • sendPeerDataOperationMessage()

  • sendPresenceUpdate()

  • sendRawMessage()

  • sendReceipt()

  • sendReceipts()

  • sendRetryRequest()

  • sendWAMBuffer()

  • signalRepository

  • star()

  • subscribeNewsletterUpdates()

  • type

  • updateBlockStatus()

  • updateBussinesProfile()

  • updateCallPrivacy()

  • updateCoverPhoto()

  • updateDefaultDisappearingMode()

  • updateDisableLinkPreviewsPrivacy()

  • updateGroupsAddPrivacy()

  • updateLastSeenPrivacy()

  • updateMediaMessage()

  • updateMessagesPrivacy()

  • updateOnlinePrivacy()

  • updateProfileName()

  • updateProfilePicture()

  • updateProfilePicturePrivacy()

  • updateProfileStatus()

  • updateReadReceiptsPrivacy()

  • updateStatusPrivacy()

  • uploadPreKeys()

  • uploadPreKeysToServerIfRequired()

  • upsertMessage()

  • user

  • waitForConnectionUpdate()

  • waitForMessage()

  • waitForSocketOpen()

  • wamBuffer

  • waUploadToServer

  • ws


Function: makeCacheableSignalKeyStore

Source: https://baileys.wiki/docs/api/functions/makeCacheableSignalKeyStore

On this page

makeCacheableSignalKeyStore(store, logger?, _cache?): SignalKeyStore

Defined in: src/Utils/auth-utils.ts:36

Adds caching capability to a SignalKeyStore

Parameters

store

SignalKeyStore

the store to add caching to

logger?

ILogger

to log trace events

_cache?

CacheStore

cache store to use

Returns

SignalKeyStore

  • Parameters store

  • logger?

  • _cache?

  • Returns


Function: useMultiFileAuthState

Source: https://baileys.wiki/docs/api/functions/useMultiFileAuthState

On this page

useMultiFileAuthState(folder): Promise<{ saveCreds: () => Promise<void>; state: AuthenticationState; }>

Defined in: src/Utils/use-multi-file-auth-state.ts:33

stores the full authentication state in a single folder. Far more efficient than singlefileauthstate

Again, I wouldn't endorse this for any production level use other than perhaps a bot. Would recommend writing an auth state for use with a proper SQL or No-SQL DB

Parameters

folder

string

Returns

Promise<{ saveCreds: () => Promise<void>; state: AuthenticationState; }>

  • Parameters folder

  • Returns


Function: delay

Source: https://baileys.wiki/docs/api/functions/delay

On this page

delay(ms): Promise<void>

Defined in: src/Utils/generics.ts:121

Parameters

ms

number

Returns

Promise<void>

  • Parameters ms

  • Returns


Function: toNumber

Source: https://baileys.wiki/docs/api/functions/toNumber

On this page

toNumber(t): number

Defined in: src/Utils/generics.ts:95

Parameters

t

undefined | null | number | Long

Returns

number

  • Parameters t

  • Returns


Function: toBuffer

Source: https://baileys.wiki/docs/api/functions/toBuffer

On this page

toBuffer(stream): Promise<Buffer<ArrayBuffer>>

Defined in: src/Utils/messages-media.ts:293

Parameters

stream

Readable

Returns

Promise<Buffer<ArrayBuffer>>

  • Parameters stream

  • Returns


Function: unixTimestampSeconds

Source: https://baileys.wiki/docs/api/functions/unixTimestampSeconds

On this page

unixTimestampSeconds(date): number

Defined in: src/Utils/generics.ts:99

unix timestamp of a date in seconds

Parameters

date

Date = ...

Returns

number

  • Parameters date

  • Returns

Variables


Variable: WAMessageStatus

Source: https://baileys.wiki/docs/api/variables/WAMessageStatus

const WAMessageStatus: typeof Status = proto.WebMessageInfo.Status

Defined in: src/Types/Message.ts:37


Variable: WAMessageStubType

Source: https://baileys.wiki/docs/api/variables/WAMessageStubType

const WAMessageStubType: typeof StubType = proto.WebMessageInfo.StubType

Defined in: src/Types/Message.ts:36


Variable: S_WHATSAPP_NET

Source: https://baileys.wiki/docs/api/variables/S_WHATSAPP_NET

const S_WHATSAPP_NET: "@s.whatsapp.net" = &#x27;@s.whatsapp.net&#x27;

Defined in: src/WABinary/jid-utils.ts:1


Variable: Browsers

Source: https://baileys.wiki/docs/api/variables/Browsers

const Browsers: BrowsersMap

Defined in: src/Utils/browser-utils.ts:19


Variable: MEDIA_KEYS

Source: https://baileys.wiki/docs/api/variables/MEDIA_KEYS

const MEDIA_KEYS: ("ppic" | "product" | "image" | "video" | "sticker" | "thumbnail-document" | "audio" | "thumbnail-image" | "biz-cover-photo" | "thumbnail-video" | "thumbnail-link" | "gif" | "md-app-state" | "md-msg-hist" | "document" | "ptt" | "product-catalog-image" | "payment-bg-image" | "ptv")[]

Defined in: src/Defaults/index.ts:119


Variable: DEFAULT_CONNECTION_CONFIG

Source: https://baileys.wiki/docs/api/variables/DEFAULT_CONNECTION_CONFIG

const DEFAULT_CONNECTION_CONFIG: SocketConfig

Defined in: src/Defaults/index.ts:47

Enums


Enum: DisconnectReason

Source: https://baileys.wiki/docs/api/enumerations/DisconnectReason

On this page

Defined in: src/Types/index.ts:27

Enumeration Members

badSession

badSession: 500

Defined in: src/Types/index.ts:33

connectionClosed

connectionClosed: 428

Defined in: src/Types/index.ts:28

connectionLost

connectionLost: 408

Defined in: src/Types/index.ts:29

connectionReplaced

connectionReplaced: 440

Defined in: src/Types/index.ts:30

forbidden

forbidden: 403

Defined in: src/Types/index.ts:36

loggedOut

loggedOut: 401

Defined in: src/Types/index.ts:32

multideviceMismatch

multideviceMismatch: 411

Defined in: src/Types/index.ts:35

restartRequired

restartRequired: 515

Defined in: src/Types/index.ts:34

timedOut

timedOut: 408

Defined in: src/Types/index.ts:31

unavailableService

unavailableService: 503

Defined in: src/Types/index.ts:37

  • Enumeration Members badSession
  • connectionClosed
  • connectionLost
  • connectionReplaced
  • forbidden
  • loggedOut
  • multideviceMismatch
  • restartRequired
  • timedOut
  • unavailableService