La interfaz está localizada; las descripciones y documentos de las Skills se traducen automáticamente con IA a su idioma. El código, los comandos, rutas y términos técnicos se mantienen en el original, y prevalece el documento del autor.
Explorar Skills
Productividad · SKILL.md

signallayer-backlinks-client

signallayer-backlinks-client

使用 SignalLayer.io 的真实 OpenClaw API 创建、查询和分页管理外链 Campaign。适用于用户要求配置 SignalLayer API Key、查询积分、创建外链任务、查看任务状态或列出 Campaign;客户端未指定数量时默认 200,但服务端 linkCount 始终必填。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentación de la Skill

GitHub

name: signallayer-backlinks-client description: 使用 SignalLayer.io 的真实 OpenClaw API 创建、查询和分页管理外链 Campaign。适用于用户要求配置 SignalLayer API Key、查询积分、创建外链任务、查看任务状态或列出 Campaign;客户端未指定数量时默认 200,但服务端 linkCount 始终必填。

SignalLayer Backlinks Client

安全规则

  1. 优先从 SIGNALLAYER_API_KEY 环境变量读取 Key。
  2. 不在回复、日志或 Campaign 历史中回显完整 Key。
  3. 仅在用户明确选择兼容模式时,才保存到 memory/signallayer-api-user.md;提醒这是明文文件且不得提交 Git。
  4. 配置后必须调用 GET /credits 真实验证。仅检查 sl_ 前缀不算验证成功。

API 契约

Base URL:https://signallayer.io/api/openclaw

操作方法与路径
查询积分 / 验证 KeyGET /credits
创建POST /create-campaign
查询单个任务GET /campaign-status/{id}
查询任务列表GET /campaigns?limit=20&offset=0

认证 Header:Authorization: Bearer <USER_API_KEY>。

创建流程

  1. 获取 API Key 并调用 /credits。
  2. 从用户请求提取参数:
    • targetUrl:必填。
    • brandName:API 必填;用户未提供时,可从目标 hostname 生成候选值并明确告知用户。
    • linkCount:API 必填;用户未指定时客户端使用 200。
    • keywords:可选,默认空字符串。
    • strategy:safety(默认)、neutral、aggressive。
    • speed:natural(默认)、standard、drip。
    • dripDays:drip 时为 10–30,默认 14。
  3. 调用:
POST https://signallayer.io/api/openclaw/create-campaign
Authorization: Bearer <USER_API_KEY>
Content-Type: application/json

{
  "targetUrl": "https://example.com",
  "brandName": "Example",
  "keywords": "seo,marketing",
  "linkCount": 200,
  "strategy": "safety",
  "speed": "natural",
  "dripDays": 14,
  "source": "openclaw-skill"
}
  1. 创建成功必须按 HTTP 201 和 success: true 判断。Campaign ID 位于 campaign.id。
  2. 只记录非敏感 Campaign 元数据。

状态与列表

状态响应的进度位于:

{
  "campaign": {
    "progress": {
      "total": 200,
      "completed": 85,
      "pending": 115,
      "percent": 43
    }
  }
}

不要读取不存在的顶层 completed、total、campaign_id、updatedAt 或预计完成时间。

列表接口默认返回 20 条,limit 最大为 100。它是 Campaign 分页数量,与每个 Campaign 的外链数量无关。

计费与速度

  • 当前计费:1 条外链 = 1 积分。
  • aggressive 不按 1.5 倍扣积分。
  • API 不支持 instant,不得发送或向用户推荐该值。
  • natural/standard 进入正常 Agent 队列;drip 生成 10–30 天的日期排期。
  • API 不返回 SLA 或预计完成日期,不要自行承诺。

错误处理

读取 HTTP 状态和 JSON 中的 code、error、可选 field:

  • 400:参数或 Campaign ID 格式错误。
  • 401:Key 缺失或无效。
  • 402:积分不足。
  • 404:任务不存在或不属于当前 Key。
  • 500:服务端创建、列表或状态查询失败。

遇到 HTML 响应时,优先检查是否误用了 api.signallayer.io/v1 或 /campaigns/{id} 等旧路径。

独立客户端

优先使用仓库脚本,避免手写漂移的请求:

python scripts/signallayer_client.py --credits
python scripts/signallayer_client.py --target "https://example.com" --brand "Example"
python scripts/signallayer_client.py --status "campaign_uuid"
python scripts/signallayer_client.py --list

完整契约见 references/api.md,排查流程见 OPERATION-GUIDE.md。

Skills guardadas