# 获取用户列表

根据应用获取该应用的用户列表,支持关键词搜索。

# 📋 API概览

# 基础信息

  • 接口地址: GET https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList
  • 请求方式: GET
  • 认证方式: 通过 accessSecret 参数认证
  • 响应格式: JSON

# 📝 请求参数

# 参数说明

参数 类型 必需 说明 示例
accessSecret string 应用密钥 5dae3031043e4.....60754
keyword string 搜索关键词,可搜索用户名、备注等 张三

# 请求示例

# 获取所有用户
GET https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList?accessSecret=5dae3031043e4.....60754

# 按关键词搜索用户
GET https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList?accessSecret=5dae3031043e4.....60754&keyword=张三

# 📊 响应格式

# 成功响应

{
  "code": 1,
  "message": "操作成功!",
  "data": [
    {
      "id": "user_001",
      "username": "张三",
      "nickname": "小张",
      "remark": "VIP用户",
      "avatar": "https://example.com/avatar1.jpg",
      "subscribeTime": "2024-01-15 10:30:22",
      "lastActiveTime": "2024-12-01 14:20:15",
      "status": 1
    },
    {
      "id": "user_002", 
      "username": "李四",
      "nickname": "老李",
      "remark": "普通用户",
      "avatar": "https://example.com/avatar2.jpg", 
      "subscribeTime": "2024-02-20 09:15:30",
      "lastActiveTime": "2024-11-30 16:45:20",
      "status": 1
    }
  ]
}

# 错误响应

当请求失败时,会返回相应的错误码和错误信息:

{
  "code": 10011,
  "message": "应用不存在"
}

# 📋 返回字段说明

# data 数组字段

字段 类型 说明
id string 用户ID,用于发送消息时指定目标用户
username string 用户名
nickname string 用户昵称
remark string 备注信息
avatar string 用户头像URL
subscribeTime string 关注时间,格式:yyyy-MM-dd HH:mm:ss
lastActiveTime string 最后活跃时间,格式:yyyy-MM-dd HH:mm:ss
status integer 用户状态
1:正常
0:禁用

# ❗ 注意事项

重要提醒

  1. 认证必需: 必须提供有效的 accessSecret
  2. 数据隔离: 只能获取当前应用的用户数据
  3. 搜索功能: keyword 参数支持模糊搜索用户名、昵称、备注等字段
  4. 用户状态: 只返回状态正常的用户(status=1)
  5. 数据量: 为保证性能,建议使用关键词搜索而非获取全部用户

# 🔧 使用示例

# JavaScript 示例

async function getUserList(accessSecret, keyword = '') {
  try {
    let url = `https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList?accessSecret=${accessSecret}`;
    if (keyword) {
      url += `&keyword=${encodeURIComponent(keyword)}`;
    }
    
    const response = await fetch(url);
    const result = await response.json();
    
    if (result.code === 1) {
      console.log('用户列表:', result.data);
      return result.data;
    } else {
      console.error('获取用户列表失败:', result.message);
      return null;
    }
  } catch (error) {
    console.error('请求出错:', error);
    return null;
  }
}

// 使用示例
const allUsers = await getUserList('your_access_secret');
const searchUsers = await getUserList('your_access_secret', '张三');

# Python 示例

import requests
from urllib.parse import quote

def get_user_list(access_secret, keyword=None):
    """获取用户列表"""
    url = "https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList"
    params = {'accessSecret': access_secret}
    
    if keyword:
        params['keyword'] = keyword
    
    try:
        response = requests.get(url, params=params)
        result = response.json()
        
        if result['code'] == 1:
            print('用户列表:', result['data'])
            return result['data']
        else:
            print('获取用户列表失败:', result['message'])
            return None
    except Exception as e:
        print('请求出错:', str(e))
        return None

# 使用示例
all_users = get_user_list('your_access_secret')
search_users = get_user_list('your_access_secret', '张三')

# PHP 示例

<?php
function getUserList($accessSecret, $keyword = null) {
    $url = "https://waterfallapi.zhaoyizhe.com/waterfall/wapi/getUserList";
    $params = ['accessSecret' => $accessSecret];
    
    if ($keyword) {
        $params['keyword'] = $keyword;
    }
    
    $url .= '?' . http_build_query($params);
    
    $response = file_get_contents($url);
    $result = json_decode($response, true);
    
    if ($result['code'] === 1) {
        echo "用户列表:\n";
        print_r($result['data']);
        return $result['data'];
    } else {
        echo "获取用户列表失败: " . $result['message'] . "\n";
        return null;
    }
}

// 使用示例
$allUsers = getUserList('your_access_secret');
$searchUsers = getUserList('your_access_secret', '张三');
?>

# 🎯 使用场景

  1. 精准推送: 获取用户列表后,可以根据用户属性进行精准消息推送
  2. 用户管理: 了解应用的用户构成和活跃情况
  3. 个性化服务: 根据用户信息提供个性化的消息内容
  4. 数据分析: 分析用户行为和偏好

# 📞 技术支持

如果在使用过程中遇到问题:

  • 📧 邮箱: zhangxiao@zhaoyizhe.com
  • 💬 公众号: 瀑布消息

下一步: 获取模板列表 | 发送消息