Skip to content

查询实例登录状态 ​

读取平台侧记录的实例登录状态。适合在后台展示实例状态,或在发送消息前做一次粗筛。

接口地址: POST /isOnline

这不是实时在线探测

本接口返回的是平台保存的登录记录是否存在,不会向微信客户端发起实时探测。

微信在客户端被踢下线、网络异常断开等情况下,平台需要通过重连与对账流程才能确认失联并清除该记录, 因此 data.isOnline 存在延迟收敛:不同异常路径的收敛时间不同,期间可能仍返回 true。

发送消息前的校验只能挡住已确认离线的实例,不能保证实例此刻在线。真实结果以发送接口的返回为准。

说明

接口调用成功(code = 1000)不等于实例在线。登录状态以 data.isOnline 为准。

请求参数 ​

参数名必选类型说明
wId是string登录实例标识

响应参数 ​

参数名类型说明
codestring1000 成功;其他值都是失败,通常是 1001
messagestring反馈信息
data.isOnlinebooleantrue 平台存在该实例的登录记录,false 不存在(已确认离线)

请求示例 ​

http
POST {BASE_URL}/isOnline
Authorization: Bearer <你的调用凭证>
Content-Type: application/json

{
 "wId": "0000016e-abcd-0ea8-0002-d8c2dfdb0bf3"
}
bash
curl -X POST '{BASE_URL}/isOnline' \
  -H 'Authorization: Bearer <你的调用凭证>' \
  -H 'Content-Type: application/json' \
  --data-raw '{
 "wId": "0000016e-abcd-0ea8-0002-d8c2dfdb0bf3"
}'
python
import requests

url = "{BASE_URL}/isOnline"
headers = {"Authorization": "Bearer <你的调用凭证>", "Content-Type": "application/json"}
body = """{
 "wId": "0000016e-abcd-0ea8-0002-d8c2dfdb0bf3"
}"""

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}/isOnline";
String body = "{\n" +
    " \"wId\": \"0000016e-abcd-0ea8-0002-d8c2dfdb0bf3\"\n" +
    "}";

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder(URI.create(url))
    .header("Authorization", "Bearer <你的调用凭证>")
    .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}/isOnline';
$body = <<<'JSON'
{
 "wId": "0000016e-abcd-0ea8-0002-d8c2dfdb0bf3"
}
JSON;

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

存在登录记录 ​

json
{
 "message": "成功",
 "code": "1000",
 "data": {
 "isOnline": true
 }
}

无登录记录 ​

json
{
 "message": "成功",
 "code": "1000",
 "data": {
 "isOnline": false
 }
}

错误响应 ​

json
{
 "message": "失败",
 "code": "1001",
 "data": null
}

使用建议 ​

  • 发送前主动检查,用本接口。
  • 实时感知掉线,接入消息回调。
  • 查询为离线时,确认网络后可继续调用 断线重连。