目录
列出服务
列出你可以下单的所有服务,包含你自己的价格、限制、标签、额外字段、细水长流限制和可用性。每个服务是一个对象,早期版本的所有字段仍然保留。
https://notpanel.com/api/v3action=services- 需要 API key
- 请求过于频繁
- 请求体:
application/x-www-form-urlencoded
参数
始终发送
keystring必需- 你的 API key。
actionstring必需services必须是字面字符串 “services”。
操作参数
languagestring可选- 名称的语言。英文可省略。英文名称始终在 canonical_name 中。en · es · pt · ru · tr · ar · hi · id · fr · zh
servicestring (CSV)可选- 只返回这些服务。最多 100 个以逗号分隔的服务 ID。
curl -X POST https://notpanel.com/api/v3 \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "key=YOUR_API_KEY&action=services&service=7,12"const res = await fetch("https://notpanel.com/api/v3", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
key: "YOUR_API_KEY",
action: "services",
service: "7,12",
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://notpanel.com/api/v3",
data={
"key": "YOUR_API_KEY",
"action": "services",
"service": "7,12",
},
)
print(res.json())<?php
$body = http_build_query([
'key' => 'YOUR_API_KEY',
'action' => 'services',
'service' => '7,12',
]);
$response = file_get_contents('https://notpanel.com/api/v3', false, stream_context_create([
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => $body,
'ignore_errors' => true,
],
]));
print_r(json_decode($response, true));
将 YOUR_API_KEY 替换为 API 页面中的密钥。
[
{
"service": "7",
"name": "Instagram Followers",
"type": "Default",
"category": "Instagram Followers",
"rate": "1.20",
"min": "100",
"max": "10000",
"refill": true,
"cancel": true,
"dripfeed": true,
"type_key": "default",
"canonical_name": "Instagram Followers",
"name_language": "en",
"platform": "instagram",
"tags": ["refill", "cancel", "drip_feed"],
"fields": [],
"drip_feed": {
"mode": "batches",
"min_runs": 2,
"max_runs": 100,
"min_interval_minutes": 1,
"max_interval_minutes": 1440,
"max_total_minutes": 2880
},
"step": 1,
"availability": "available",
"average_time_minutes": 30
},
{
"service": "12",
"name": "Telegram Post Reactions",
"type": "Default",
"category": "Telegram Reactions",
"rate": "0.90",
"min": "10",
"max": "50000",
"refill": false,
"cancel": false,
"dripfeed": false,
"type_key": "default",
"canonical_name": "Telegram Post Reactions",
"name_language": "en",
"platform": "telegram",
"tags": ["reactions"],
"fields": [
{
"key": "reactions",
"kind": "reactions",
"required": false,
"label": "Reactions",
"allowed": ["👍", "👎", "❤️", "🔥", "🥰", "👏", "😁", "🤔", "🤯", "😱", "🤬", "😢", "🎉", "🤩", "🤮", "💩", "🙏", "👌", "🕊️", "🤡", "🥱", "🥴", "😍", "🐳", "❤️🔥", "🌚", "🌭", "💯", "🤣", "⚡", "🍌", "🏆", "💔", "🤨", "😐", "🍓", "🍾", "💋", "🖕", "😈", "😴", "😭", "🤓", "👻", "👨💻", "👀", "🎃", "🙈", "😇", "😨", "🤝", "✍️", "🤗", "🫡", "🎅", "🎄", "☃️", "💅", "🤪", "🗿", "🆒", "💘", "🙉", "🦄", "😘", "💊", "🙊", "😎", "👾", "🤷♂️", "🤷", "🤷♀️", "😡"],
"max_distinct": 11,
"modes": ["mix", "exact"]
}
],
"drip_feed": null,
"step": 1,
"availability": "available",
"average_time_minutes": null
}
]错误
- 400
{"error":"Invalid language: not_allowed","error_code":"INVALID_PARAMETER","retryable":false,"details":{"param":"language","rule":"not_allowed"}}该语言不是受支持的语言代码之一。
- 400
{"error":"Maximum 100 IDs per request","error_code":"TOO_MANY_IDS","retryable":false}服务列表包含的 ID 超过 100 个。
- 429
{"error":"Rate limit exceeded","error_code":"API_RATE_LIMITED","retryable":true,"retry_after":12}一分钟内超过 10 次请求。请等待 Retry-After 指定的秒数。
响应字段
响应是一个数组,每个服务对应一个对象。早期版本的所有字段保持不变;tags、fields、drip_feed、step、availability 和 average_time_minutes 是新增字段,cancel 现在名副其实。
响应字段
serviceinteger- 稳定的数字服务 ID。在
add中将其用作service。 namestring- 所请求语言的服务名称。
typestring- 服务类型名称。需要用于逻辑判断时,请使用
type_key。 categorystring- 分类名称。
ratestring- 你自己的每 1,000 单位价格,以美元计,字符串形式。已包含你账户的折扣。套餐则为单个订单的价格。
mininteger- 单个订单的最小数量。
maxinteger- 单个订单的最大数量。
refillboolean- 当该服务的补充可通过 API 使用时为
true。 cancelboolean- 当最初 15 秒之后仍支持取消请求时为
true。开始阶段的即时取消适用于所有订单,此处不显示。 dripfeedboolean- 当服务接受细水长流时为
true,方式是runs加interval,或drip_feed_total_minutes。 type_keystring- 稳定的类型键,例如
default或custom_comments。它告诉你应预期哪些额外字段。 canonical_namestring- 英文名称,即使设置了
language也是如此。 name_languagestringname的语言。platformstring | null- 平台键,例如
instagram;服务没有平台时为null。 tagsstring[]- 说明服务提供内容的简短标签。见下方列表。
fieldsobject[]- 服务接受的额外输入及其限制。仅需链接和数量时为空。
drip_feedobject | null- 细水长流限制;服务没有时为
null。 stepinteger- 数量必须是该数字的倍数。
availabilitystringavailable或paused。见下方可用性。average_time_minutesinteger | null- 开始交付前的平均分钟数;已知订单太少时为
null。
标签
tags 让你无需读取每个字段即可筛选列表。服务提供的每项内容各有一个标签。
标签
refill- 补充可通过 API 使用。
cancel- 支持取消请求,而不仅仅是即时取消。
drip_feed- 该服务接受细水长流。
reactions- 该服务接受
reactions字段。 last_posts- 该服务接受
last_posts字段。 poll_answer- 该服务接受
answer_number字段。其他每个额外字段都会以自己的名称添加一个标签,例如comments。
额外字段
fields 描述服务接受的每个额外输入:键、类型、是否必填及其限制。在 add 中按键发送每个字段。反应字段会列出允许的表情符号和模式。下一页会逐个说明各字段及其规则。
细水长流限制
drip_feed 为 null 或以下两种形式之一。batches 服务接受运行次数及其间隔分钟数。unit_delay 服务把整个订单分摊到一个总时长内。无论哪种,整个订单最多可持续 48 小时(2880 分钟)。
{
"mode": "batches",
"min_runs": 2,
"max_runs": 100,
"min_interval_minutes": 1,
"max_interval_minutes": 1440,
"max_total_minutes": 2880
}{
"mode": "unit_delay",
"max_total_minutes": 2880
}可用性
下单时的服务错误
当你选择的服务无法接受订单时,add 会返回这些错误。
- 404
SERVICE_NOT_FOUND
Service not found没有此 ID 的服务,或该服务对你不可用。 请先修正请求。
- 410
SERVICE_DISCONTINUED
Service has been discontinued该服务已停用。 请先修正请求。
- 409
SERVICE_PAUSED
Service is temporarily unavailable该服务暂时暂停。请稍后重试。 重试可能有帮助。
其他读取操作
action=catalog 以分页列表返回服务,包含平台、分类、平均时间和订单字段。可选筛选参数:page、limit、search、platform、category、type、refill、dripfeed、available、min_rate、max_rate、sort、language。catalog 每个账户每分钟限 30 次请求。
action=account_status 返回你的累计消费、API 限额等级和折扣。