查询剩余次数接口
Note
接口概述
该接口用于查询账户内剩余可用次数。系统默认会在剩余可用次数低于 10000、2000、300、100、0 这几个节点给您发送余量预警邮件、短信。您可通过该接口监控用量并实现自定义预警机制。
🎯 基本信息
| 项目 | 内容 |
|---|---|
| 接口地址 | https://api.meowload.net/openapi/available-credits |
| 请求方式 | GET |
📋 请求参数
请求头 (Headers)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
x-api-key | string | 是 | API 密钥,在 开发者管理中心 获取 |
accept-language | string | - | 错误消息语言,默认 en支持: zh、en、ja、es、de 等 |
请求示例
curl -X GET https://api.meowload.net/openapi/available-credits \
-H "x-api-key: your-api-key-here" \
-H "accept-language: zh"🟢 成功响应
HTTP 状态码:
200 OK
响应示例
{
"availableCredits": 282539
}响应字段说明
| 字段 | 类型 | 必返回 | 说明 |
|---|---|---|---|
availableCredits | number | 是 | 剩余可用次数(调用额度) |
🔴 错误响应
错误响应示例
{
"message": "API Key 错误,请检查 API Key 是否正确"
}HTTP 状态码说明
| 状态码 | 说明 | 常见原因 | 解决方案 |
|---|---|---|---|
200 | 成功 | - | - |
400 | 业务失败 | 解析失败,链接不包含有效媒体 | 检查链接是否正确,是否包含视频/图片等 |
401 | 鉴权失败 | API Key 无效或过期 | 检查 x-api-key 是否正确 |
402 | 次数用尽 | 调用额度已用完 | 前往 管理中心 充值 |
422 | 参数错误 | 链接格式不正确 | 检查 url 参数格式 |
500 | 服务器错误 | 服务器内部异常 | 联系技术支持 |
💻 代码示例
Python
import requests
def check_credits(api_key):
"""查询剩余次数"""
api_url = "https://api.meowload.net/openapi/available-credits"
headers = {
"x-api-key": api_key,
"accept-language": "zh"
}
try:
response = requests.get(api_url, headers=headers)
if response.status_code == 200:
data = response.json()
credits = data['availableCredits']
print(f"✅ 剩余次数: {credits}")
# 发送预警
if credits < 1000:
print(f"⚠️ 警告:剩余次数仅有 {credits},请及时充值!")
elif credits < 10000:
print(f"⚠️ 提示:剩余次数 {credits},建议检查用量")
return credits
else:
error = response.json()
print(f"❌ 查询失败: {error['message']}")
return None
except Exception as e:
print(f"❌ 网络错误: {e}")
return None
# 使用示例
api_key = "your-api-key-here"
credits = check_credits(api_key)Python - 自动监控和预警
import requests
import time
from datetime import datetime
class CreditMonitor:
"""API 额度监控器"""
def __init__(self, api_key, check_interval=3600, alert_thresholds=None):
"""
初始化监控器
参数:
api_key: API 密钥
check_interval: 检查间隔(秒),默认 1 小时
alert_thresholds: 预警阈值列表,默认 [100, 500, 1000, 5000]
"""
self.api_key = api_key
self.check_interval = check_interval
self.alert_thresholds = alert_thresholds or [100, 500, 1000, 5000]
self.last_credits = None
def get_credits(self):
"""获取当前剩余次数"""
api_url = "https://api.meowload.net/openapi/available-credits"
headers = {"x-api-key": self.api_key}
try:
response = requests.get(api_url, headers=headers)
if response.status_code == 200:
return response.json()['availableCredits']
except Exception as e:
print(f"❌ 查询失败: {e}")
return None
def check_and_alert(self):
"""检查余额并生成预警"""
credits = self.get_credits()
if credits is None:
return
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
# 检查是否需要预警
for threshold in sorted(self.alert_thresholds):
if credits < threshold < (self.last_credits or float('inf')):
print(f"[{timestamp}] ⚠️ 警告:剩余次数 {credits} < {threshold}")
# 可以在这里发送邮件/短信预警
self.send_alert(credits, threshold)
self.last_credits = credits
print(f"[{timestamp}] ✅ 剩余次数: {credits}")
def send_alert(self, credits, threshold):
"""发送预警通知(可自定义)"""
# 这里可以集成邮件/短信/钉钉等通知
print(f"📢 预警通知已发送!")
def start_monitoring(self, duration=None):
"""
启动监控
参数:
duration: 监控时长(秒),None 表示持续监控
"""
elapsed = 0
print(f"🔍 开始监控(检查间隔: {self.check_interval}s)...")
while True:
self.check_and_alert()
if duration and elapsed >= duration:
print("🛑 监控已停止")
break
time.sleep(self.check_interval)
elapsed += self.check_interval
# 使用示例
monitor = CreditMonitor(
api_key="your-api-key-here",
check_interval=600, # 每 10 分钟检查一次
alert_thresholds=[100, 500, 1000, 5000, 10000]
)
# 一次性检查
monitor.check_and_alert()
# 或者启动后台监控
# monitor.start_monitoring(duration=3600) # 监控 1 小时JavaScript
async function checkCredits(apiKey) {
const apiUrl = "https://api.meowload.net/openapi/available-credits";
try {
const response = await fetch(apiUrl, {
method: "GET",
headers: {
"x-api-key": apiKey,
"accept-language": "zh"
}
});
if (!response.ok) {
const error = await response.json();
console.error(`❌ 查询失败: ${error.message}`);
return null;
}
const data = await response.json();
const credits = data.availableCredits;
console.log(`✅ 剩余次数: ${credits}`);
// 发送预警
if (credits < 1000) {
console.warn(`⚠️ 警告:剩余次数仅有 ${credits},请及时充值!`);
} else if (credits < 10000) {
console.info(`⚠️ 提示:剩余次数 ${credits},建议检查用量`);
}
return credits;
} catch (error) {
console.error(`❌ 网络错误: ${error.message}`);
return null;
}
}
// 使用示例
checkCredits("your-api-key-here");
// 定时检查(每30分钟)
setInterval(() => {
checkCredits("your-api-key-here");
}, 30 * 60 * 1000);Golang
package main
import (
"encoding/json"
"fmt"
"io"
"net/http"
)
type CreditsResponse struct {
AvailableCredits int `json:"availableCredits"`
}
func checkCredits(apiKey string) (int, error) {
apiURL := "https://api.meowload.net/openapi/available-credits"
req, err := http.NewRequest("GET", apiURL, nil)
if err != nil {
return 0, err
}
req.Header.Set("x-api-key", apiKey)
req.Header.Set("accept-language", "zh")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
return 0, fmt.Errorf("❌ 查询失败: %w", err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
if resp.StatusCode == 200 {
var result CreditsResponse
if err := json.Unmarshal(body, &result); err != nil {
return 0, fmt.Errorf("❌ 解析失败: %w", err)
}
fmt.Printf("✅ 剩余次数: %d\n", result.AvailableCredits)
// 预警
if result.AvailableCredits < 1000 {
fmt.Printf("⚠️ 警告:剩余次数仅有 %d,请及时充值!\n", result.AvailableCredits)
}
return result.AvailableCredits, nil
}
return 0, fmt.Errorf("- 查询失败 (%d)", resp.StatusCode)
}
func main() {
credits, err := checkCredits("your-api-key-here")
if err != nil {
fmt.Printf("错误: %v\n", err)
} else {
fmt.Printf("当前额度: %d\n", credits)
}
}📞 充值和管理
前往 开发者接口管理中心 可以:
- 💳 充值额度 - 购买更多 API 调用次数
- 📊 查看余量 - 实时查看接口剩余次数
- 🔑 管理 API Key - 重置密钥
- 📧 预警设置 - 配置余量预警短信接收手机号
Tip
系统自动预警
系统会在以下几个节点自动发送邮件/短信预警:
- 剩余次数 < 10,000
- 剩余次数 < 2,000
- 剩余次数 < 300
- 剩余次数 < 100
- 剩余次数 = 0 (已用完)