Skip to content
POST{BASE_URL}/wx-api/api/contact/phoneNumberAddWechat
写操作联系人JSON · Bearer App Token · body appid

通过手机号添加个微

phoneNumberSearch 拿到的票据,向对方的个人微信发起好友申请。

请求参数

参数必填类型说明
appidstring实例 appid,标识操作哪个已登录账号。示例:we_xxxxxxxxxxxxxxx
ticketstring加好友票据,取自手机号搜索data 数组对应项的 wxTicket,作为 ticket 传入。示例:<搜索结果中的票据>
openidstring对方 openid,取自手机号搜索data 数组对应项的 openid。示例:<搜索结果中的 openid>
verifyMessagestring验证消息。示例:我是某某,添加你方便沟通一下
remarkPhonearray<object>备注手机号列表,每项 {phone}。示例:[{"phone":""}]
remarkPhone[] 字段
字段类型说明
remarkPhone[].phonestring电话(外部对象常为空)

请求示例

http
POST {BASE_URL}/wx-api/api/contact/phoneNumberAddWechat
Authorization: Bearer <你的 App Token>
Content-Type: application/json

{
  "appid": "we_xxxxxxxxxxxxxxx",
  "ticket": "<搜索结果中的票据>",
  "openid": "<搜索结果中的 openid>",
  "verifyMessage": "我是某某,添加你方便沟通一下",
  "remarkPhone": [
    {
      "phone": ""
    }
  ]
}
bash
curl -X POST '{BASE_URL}/wx-api/api/contact/phoneNumberAddWechat' \
  -H 'Authorization: Bearer <你的 App Token>' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "appid": "we_xxxxxxxxxxxxxxx",
  "ticket": "<搜索结果中的票据>",
  "openid": "<搜索结果中的 openid>",
  "verifyMessage": "我是某某,添加你方便沟通一下",
  "remarkPhone": [
    {
      "phone": ""
    }
  ]
}'
python
import requests

url = "{BASE_URL}/wx-api/api/contact/phoneNumberAddWechat"
headers = {"Authorization": "Bearer <你的 App Token>", "Content-Type": "application/json"}
body = """{
  "appid": "we_xxxxxxxxxxxxxxx",
  "ticket": "<搜索结果中的票据>",
  "openid": "<搜索结果中的 openid>",
  "verifyMessage": "我是某某,添加你方便沟通一下",
  "remarkPhone": [
    {
      "phone": ""
    }
  ]
}"""

resp = requests.post(url, headers=headers, data=body.encode("utf-8"))
print(resp.text)
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

String url = "{BASE_URL}/wx-api/api/contact/phoneNumberAddWechat";
String body = "{\n" +
    "  \"appid\": \"we_xxxxxxxxxxxxxxx\",\n" +
    "  \"ticket\": \"<搜索结果中的票据>\",\n" +
    "  \"openid\": \"<搜索结果中的 openid>\",\n" +
    "  \"verifyMessage\": \"我是某某,添加你方便沟通一下\",\n" +
    "  \"remarkPhone\": [\n" +
    "    {\n" +
    "      \"phone\": \"\"\n" +
    "    }\n" +
    "  ]\n" +
    "}";

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder(URI.create(url))
    .header("Authorization", "Bearer <你的 App Token>")
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
php
<?php

$url = '{BASE_URL}/wx-api/api/contact/phoneNumberAddWechat';
$body = <<<'JSON'
{
  "appid": "we_xxxxxxxxxxxxxxx",
  "ticket": "<搜索结果中的票据>",
  "openid": "<搜索结果中的 openid>",
  "verifyMessage": "我是某某,添加你方便沟通一下",
  "remarkPhone": [
    {
      "phone": ""
    }
  ]
}
JSON;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer <你的 App Token>',
    'Content-Type: application/json',
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;

响应示例

解析响应前确认字段

返回字段见联系人模块总览。完整响应格式及未列出的字段,请通过开通与支持联系对接人确认后再解析。

响应字段

字段类型说明
codeint64统一封套状态码:0=成功,负数=失败
detailstring附加明细,通常为空
messagestring文案:成功为 ok;失败形如 -码|描述
timestring服务端处理时间 YYYY-MM-DD HH:MM:SS

常见错误

下表为企微错误码。业务失败时顶层 code=-1,具体错误码在 message| 前,例如 -3004|参数错误;鉴权与网关错误见错误码

错误码含义怎么办
-18000039加好友被限流降频,不要立即重试

下一步