ChatDaddy
  • 開始使用ChatDaddy
  • 🌟功能教程
    • 自動通知 Auto Notification
      • 如何安裝Woo-commerce
      • 如何安裝Wix Store
      • 如何安裝Paperform
      • 如何安裝Shopline
      • 如何安裝MShop
    • 多人客服 Team Inbox
      • 如何多人使用登入一個WhatsApp?
    • 群發訊息 Message Broadcast
      • 如何群發信息broadcast
      • 如何建立message template信息模板
      • 如何設置WhatsApp Sticker信息模板
      • 發送Broadcast時,如何防止被封號
      • 如何在WhatsApp群發訊息?
    • 關鍵字回覆 Keyword Auto-Reply
      • 如何設定關鍵詞自動回覆Keyword Reply
      • 自動回覆 Keyword Reply訊息範本大全
      • 如何在WhatsApp設定自動回覆機械人?
  • ✈️WhatsApp相關
    • 如何防止Whatsapp被封?
    • 如何解封WhatsApp
    • 如何製作一條有預設訊息的 WS 連結
  • 🤖WhatsApp 營銷
    • 如何使用 WhatsApp Marketing 做好網絡行銷漏斗?
    • 如何在 WhatsApp 快速累積大量客人?
    • 如何使用WhatsApp整理聯絡人資料?
  • ⛲其他教程
    • Untitled
  • ChatDaddy API
    • A Brief Guide of SendMammy API
    • How to generate code samples of different languages
Powered by GitBook
On this page
  • Introduction
  • Glossary
  • Overview
  • How to Integrate
  • Are you excited to do an Advance Integration?

Was this helpful?

  1. ChatDaddy API

A Brief Guide of SendMammy API

Introduction

Scope

This document aims to describe and provide guidelines in integrating our client's systems to the Send Mammy Service.

Audience

This document is intended for:

  • ChatDaddy Developers; enabling them to quickly learn to integrate and continuously improve the service

  • External third-party developers / organizations; enabling them to use and incorporate service into their own systems

Glossary

Terms

Descriptions

ChatDaddy

The company maintaining and managing the service

WhatsApp

A simple, secure and reliable messaging platform

Swagger

The toolset for API Documentation

Service

The Send Mammy Service

JWT

Json Web Tokens

jid

The user WhatsApp ID and it comes with a format of @s.whatsapp.net

Overview

How to Integrate

  • Get a Token

    A user can get a token by consuming an authentication endpoint from our OAuth service. Before a user can get an access token you must have your username and password registered from the service

Sample Request

curl -X 'POST' \\
  '<https://api-auth.chatdaddy.tech/oauth2/token>' \\
  -H 'accept: application/json' \\
  -H 'Content-Type: application/json' \\
  -d '{
  "username": "string:<your username here>",
  "password": "string:<your password here>",
  "grant_type": "password"
}'

Sample Success Response

{
  "access_token": "string:<access token>",
  "access_token_expiration": number:<access token expiration>,
  "refresh_token": "string:<refresh token>",
  "refresh_token_expiration": number:<refresh token expiration>,
  "tokenType": "Bearer"
}

Sample Error Response

{
  "status": "error",
  "message": "string:<error message description>",
  "code": number:<status code>
}
  • Get WhatsApp Web Connection State

    A user can get the current state of the WhatsApp web connection by consuming the the GET / of the service

Sample Request

curl -X 'GET' \\
  '<https://api.sendmammy.com/>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>'

Sample Success Response

{
  "connections": {
    "phone": false,
    "waWeb": "string:<state of whatsapp web connection>(open|close|connecting)"
  },
  "chats": {
    "hasSome": boolean:<has some chats>,
    "hasLatest": boolean:<has latest chats>
  },
  "canLogin": boolean:<is the user can login to whatsapp web>,
  "user": {
    "jid": "string:<jid>",
    "name": "string:<name of the user>",
    "phone": {
      "wa_version": "string:<whatsapp version",
      "mcc": "string:<mcc>",
      "mnc": "string:<mnc>",
      "os_version": "string:<os version>",
      "device_manufacturer": "string:<device manufacturer>",
      "device_model": "string:<device model>",
      "os_build_number": "string:<os build number>"
    },
    "imgUrl": "string:<profile picture url>"
  },
  "pendingQR": "string:<WhatsApp QR Code Data>",
  "mediaUploadsUrl": "string:<media upload url>",
  "messagesLeft": {
    "count": number:<message limit count>,
    "unlimited": boolean:<is the user's messages is unlimited>
  }
}
  • Open WhatsApp Web Connection

    A user needs to open a WhatsApp Web connection to maximize the use of the Send Mammy service. If the user received a canLogin=true from the Get WhatsApp Web Connection State it will successfully logged in the WhatsApp account to the service. Otherwise, the pendingQR will be seen on Get WhatsApp Web Connection State response. pendingQR is a QR code data that must be used within 20 seconds to generate a QR code for WhatsApp to scan. Once this QR code is successfully scanned from WhatsApp, the user will now be logged in to the service.

Sample Request

curl -X 'POST' \\
  '<https://api.sendmammy.com/open>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>' \\
  -d ''

If the response code returned by the request is 200 , this means that the opening a WhatsApp Web connections is successfully registered.

  • Sending a Message

    After successfully connected the user's WhatsApp account to the service, The user can now send message to it's recipients.

Sample Request (Text Message)

curl -X 'POST' \\
  '<https://api.sendmammy.com/messages/><user jid here>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>' \\
  -H 'Content-Type: application/json' \\
  -d '{
  "jid": "<recipient jid here>",
  "text": "This is a test message",
  "scheduleAt": <can be current unix time or desired schedule of the message to be sent out>,
  "randomizeMessage": true
}'

Sample Response (Text Message)

{
  "key": {
    "remoteJid": "string:<sender jid>",
    "fromMe": boolean:<is from the sender>,
    "id": "string:<message ID>"
  },
  "message": {
    "extendedTextMessage": {
      "text": "This is a test message"
    }
  },
  "messageTimestamp": {
    "low": 1618311227,
    "high": 0,
    "unsigned": true
  },
  "status": 1,
  "scheduled": true,
  "senderUserId": "string:<sender user id>"
}

Sample Request (Media Message)

curl -X 'POST' \\
  '<https://api.sendmammy.com/messages/><user jid here>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>' \\
  -H 'Content-Type: application/json' \\
  -d '{
  "jid": "<recipient jid here>",
  "image": {
    "url": "<image url>",
    "mimetype": "<image mime type>",
    "name": "<image name>"
  },
  "scheduleAt": 1618312071,
  "withTyping": true,
  "randomizeMessage": true
}'

Sample Response (Media Message)

{
  "key": {
    "remoteJid": "string:<sender jid>",
    "fromMe": boolean:<is from the sender>,
    "id": "string:<message ID>"
  },
  "message": {
    "imageMessage": {
      "url": "string:<.enc image url>",
      "mimetype": "img/jpg",
      "fileSha256": {
        "type": "Buffer",
        "data": [<buffer data>]
      },
      "fileLength": {
        "low": 187360,
        "high": 0,
        "unsigned": true
      },
      "mediaKey": {
        "type": "Buffer",
        "data": [<buffer data>]
      },
      "fileEncSha256": {
        "type": "Buffer",
        "data": [<buffer data>]
      }
    }
  },
  "messageTimestamp": {
    "low": 1618312071,
    "high": 0,
    "unsigned": true
  },
  "status": 1,
  "scheduled": true,
  "withTyping": true,
  "senderUserId": "string:<sender user id>"
}

Sample Request (Contact)

curl -X 'POST' \\
  '<https://api.sendmammy.com/messages/><user jid here>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>' \\
  -H 'Content-Type: application/json' \\
  -d '{
  "jid": "<recipient jid here>",
  "contacts": [
	{
	    "displayName": "<Contact Name>",
	    "phoneNumber": "<Contact Phone Number>"
	}
  ],
  "scheduleAt": 1618312684,
  "withTyping": true,
  "randomizeMessage": false
}'

Sample Response (Contact)

{
  "key": {
    "remoteJid": "string:<sender jid>",
    "fromMe": boolean:<is from the sender>,
    "id": "string:<message ID>"
  },
  "message": {},
  "messageTimestamp": {
    "low": 1618312684,
    "high": 0,
    "unsigned": true
  },
  "status": 1,
  "scheduled": true,
  "withTyping": true,
  "senderUserId": "string:<sender user id>"
}

Sample Request (Location)

curl -X 'POST' \\
  '<https://api.sendmammy.com/messages/><user jid here>' \\
  -H 'accept: application/json' \\
  -H 'Authorization: Bearer <access token here>' \\
  -H 'Content-Type: application/json' \\
  -d '{
  "jid": "<recipient jid here>",
  "location": {
    "degreesLongitude": 53.2734,
    "degreesLatitude": -7.77832031
  },
  "scheduleAt": 1618311554,
  "withTyping": true,
  "randomizeMessage": true
}'

Sample Response (Location)

{
  "key": {
    "remoteJid": "string:<sender jid>",
    "fromMe": boolean:<is from the sender>,
    "id": "string:<message ID>"
  },
  "message": {
    "locationMessage": {
      "degreesLatitude": -7.77832031,
      "degreesLongitude": 53.2734
    }
  },
  "messageTimestamp": {
    "low": 1618311554,
    "high": 0,
    "unsigned": true
  },
  "status": 1,
  "scheduled": true,
  "withTyping": true,
  "senderUserId": "string:<sender user id>"
}

Are you excited to do an Advance Integration?

Basic Guide to Continuosly Explore

  • The Server selected must be https://api.sendmammy.com/

  • To prevent getting Unauthorized Request, kindly ensure that you have clicked the Authorize button on the right

  • Upon clicking the Authorize button, the documentation will prompt an authorization modal like the image below:

  • The user must fill up a valid username and password and just click the Authorize button on the bottom part of the modal.

  • client_id & client_secret can be blank

  • The user can verify a successful authorization request by seeing if the lock icon is locked

  • The user can now request to all the endpoints of the service

  • NOTE: Don't forget to read the descriptions on the endpoint, parameters, request objects, and response objects for better understanding. If you have any concerns, please don't hesitate to contact our sales representative or support team.

PreviousUntitledNextHow to generate code samples of different languages

Last updated 4 years ago

Was this helpful?

Send Mammy is the most advanced, feature-rich unofficial API for and developed by . The Service follows the industry-standard protocol for authorization by using and using for the tokens.

The endpoints are officially documented using and following the

We are excited to hear that from you! You can explore more about the service by using our official .

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a627957f-40bc-4a39-ac16-1593c11e999d/Untitled.png
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/f23dfe95-822f-4114-9d95-33142ba95971/Untitled.png
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/38fd696e-8a13-4514-9e8f-c11bbac44479/Untitled.png
WhatsApp
ChatDaddy
OAuth 2.0
JWT
Swagger
OpenAPI Specification
API documentation