文档首页/ 云客服/ API参考/ Adapter类接口参考/ 接口说明/ 数据访问接口/ WhatsApp渠道/ 接受并处理gupshup发送的上行消息接口
更新时间:2025-11-13 GMT+08:00

接受并处理gupshup发送的上行消息接口

接口功能

接受并处理gupshup发送的上行消息。

使用说明

  • 前提条件

    正确创建whatsApp渠道配置,选择服务提供商为gupshup。

  • 详见官方文档:https://docs.gupshup.io/docs/overview

接口鉴权

通过gupshup集成商接入WhatsApp使用该鉴权方式。

使用说明:

在AICC测,渠道配置页面,配置webhook密码。

调用whatsappadapter侧接口,请求中添加请求头AuthorizationAuthorization的值为webhook密码。

Headers请求参数

表1 请求Headers参数说明

参数名称

选取原则

参数类型

默认值

说明

Content-Type

必选

String

固定填 application/json; charset=UTF-8。

Authorization

必选

String

AICC测渠道配置处配置的webhook认证密码

接口原型

表2 接口原型说明

请求方法

POST

请求URL

https://ip:port/social/on/whatsapp/{whatsAppBsp}/message/{channelId}

其中,ip:port为对外暴露的nslb的ip和port,whatsAppBsp为集成方,

channelId为渠道id

BODY请求参数

表3 请求Body中参数说明

参数名称

选取原则

参数类型

说明

timestamp

必选

long

用户发送消息的时间;为Unix时间戳(秒);

type

必选

String

消息的类型;message(用户消息)

payload

必选

object

消息的载体;表4

表4 payload中参数说明

参数名称

选取原则

参数类型

说明

id

必选

String

用户消息唯一编码

source

必选

String

用户注册whatsapp的手机号

type

必选

String

消息类型:text(文本)、audio(音频)、image(图片)、video(视频)、location(位置)、button_reply(交互式按钮回复消息),list_reply(交互式列表回复消息)、quick_reply(模板快速回复消息)

payload

必选

object

消息内容;

context

可选

object

引用消息信息;

表5 message中参数说明

参数名称

选取原则

参数类型

说明

context

可选

object

消息引用。表6

sender

必选

object

消息发送人信息。表7

text

可选

String

文本消息内容,消息类型为text。

url

可选

String

多媒体消息,消息类型为音频、视频、图片。

caption

可选

String

标题,多媒体消息标题。

contentType

可选

String

文件类型。如:image/jpg

name

可选

String

多媒体文件名。

latitude

可选

String

纬度,消息类型为location

longitude

可选

String

经度,消息类型为location

表6 context中参数说明

参数名称

选取原则

参数类型

说明

id

必选

String

whatsapp侧消息唯一id。

gsId

必选

String

gupshup消息唯一id。

表7 sender中参数说明

参数名称

选取原则

参数类型

说明

phone

必选

String

用户完整号码;包含国家编码;

name

必选

String

用户昵称

country_code

必选

String

用户的国家编码;如中国为86;

dial_code

必选

String

用户的手机号,不包含国家编码;

响应参数

调用本接口无响应内容。

接口示例

  • 请求示例
    POST /social/on/whatsapp/gupshup/message/202105102694809992
    
    host: 10.10.10.2:18446
    connection: Keep-Alive
    x-forwarded-for: 10.10.10.3, 10.10.10.4
    x-real-ip: 10.10.10.5
    content-length: 401
    remote-host: 10.10.10.6
    user-agent: java/socket
    Authorization: *************
    content-type: application/json; charset=utf-8
    accept: */*
    
    {
        "timestamp": 1743146844100,
        "type": "message",
        "payload": {
            "id": "wamid.HBgNODYxODc2NTkwMjAwMRUCABIYIEVCRTAwQUI4RDEyMDVCNzBCQUU0ODEyOUM0NTQ0RUEzAA==",
            "source": "8618*****1",
            "type": "image",
            "payload": {
                "url": "https://filemanager.gupshup.io/wa/*********",
                "contentType": "image/jpeg",
                "urlExpiry": 1743751644100
            },
            "sender": {
                "phone": "8618*******1",
                "name": "AI****i",
                "country_code": "86",
                "dial_code": "18*****1"
            }
        }
    }