#!/usr/bin/env python3 """Add confirmed usable API keys as channels to NewAPI.""" from newapi_client import ( add_channel, list_channels, test_channel, TYPE_ZHIPU_V4, TYPE_VOLC_ENGINE, TYPE_ANTHROPIC, TYPE_MINIMAX, ) from channels_config import ( build_zhipuai, build_volcano_ark, build_volcano_ark_coding, build_minimax, build_baidu_qianfan, ) def add_zhipuai(): """ZhipuAI — 63 keys, multi-key mode.""" ch, n_keys = build_zhipuai(channel_type=TYPE_ZHIPU_V4) success, msg = add_channel(ch, mode="multi_to_single") print(f"[ZhipuAI] success={success} msg={msg} keys={n_keys}") return success def add_volcano_ark(): """VolcanoArk — 4 keys, one channel each.""" channels = build_volcano_ark(channel_type=TYPE_VOLC_ENGINE) results = [] for ch in channels: success, msg = add_channel(ch) print(f"[{ch['name']}] success={success} msg={msg}") results.append(success) return all(results) def add_volcano_ark_coding(): """VolcanoArk CodingPlan — Anthropic-compatible.""" ch = build_volcano_ark_coding() success, msg = add_channel(ch) print(f"[VolcanoArk-CodingPlan] success={success} msg={msg}") return success def add_minimax(): ch = build_minimax(channel_type=TYPE_MINIMAX) success, msg = add_channel(ch) print(f"[MiniMax] success={success} msg={msg}") return success def add_baidu_qianfan(): ch = build_baidu_qianfan() success, msg = add_channel(ch) print(f"[BaiduQianfan] success={success} msg={msg}") return success if __name__ == "__main__": print("=== Adding channels to NewAPI ===\n") steps = [ ("1. ZhipuAI (63 keys, multi-key)", add_zhipuai), ("2. VolcanoArk (4 keys, separate)", add_volcano_ark), ("3. VolcanoArk CodingPlan (Anthropic)", add_volcano_ark_coding), ("4. MiniMax", add_minimax), ("5. Baidu Qianfan Coding Plan", add_baidu_qianfan), ] for label, fn in steps: print(f"--- {label} ---") fn() print() print("=== Done! Listing all channels: ===\n") for ch in list_channels(): print(f" ID={ch['id']:3d} type={ch['type']:2d} status={ch['status']} " f"name={ch['name']:30s} models={ch['models'][:60]}")