跳到主要内容

API 参考

本节概览 cert-ctrl 的公开 HTTP API。完整路径列表见:

Base URL

示例使用 https://cjj365.cc。本地开发环境常见地址:

  • http://localhost:8080
  • https://localhost:10000(TLS 代理)

认证方式

  • 会话 Cookie cjj365,通过 POST /auth/general(action login)或第三方登录获取。
  • API Key:Authorization: Bearer ak_...(无状态,无需 Cookie)。
  • 设备 JWT:Authorization: Bearer <jwt>,用于 /apiv1/devices/self/*

响应格式

成功响应返回 {"data": ...}。错误响应格式:

{ "error": { "code": 4001, "what": "Resource not found" } }

204 No Content 响应不带 body。

分页

多数列表接口支持 offsetlimit。默认 limit 为 100。

资源概览

用户作用域资源(需要会话)

使用 /apiv1/users/:user_id/.../apiv1/me/... 访问当前用户。

  • 证书与签发:/apiv1/users/:user_id/certificates/issues/export
  • ACME 账户:/apiv1/users/:user_id/acme-accounts
  • 设备与安装配置:/apiv1/users/:user_id/devices
  • 证书机构:/apiv1/users/:user_id/cas
  • API Key:/apiv1/users/:user_id/apikeys
  • 通知:/apiv1/users/:user_id/notifications/*
  • 钱包与支付:/apiv1/users/:user_id/wallets/payment-quotes/payments
  • Git 托管元数据:/apiv1/users/:user_id/gitrepos/git/*

API Key 自动化端点

  • /apiv1/me/certificate-assign
  • /apiv1/me/install-config-update/:device_public_id

设备自助端点

  • /apiv1/devices/self/updates
  • /apiv1/devices/self/certificates/:certificate_id/deploy-materials
  • /apiv1/devices/self/cas/:ca_id/bundle
  • /apiv1/devices/self/install-config
  • /apiv1/devices/self/notify

目录与注册

  • /apiv1/permissions/catalog
  • /apiv1/dns/providers/catalog
  • /apiv1/device/registration

内部/Worker 端点

  • /apiv1/internal/certificates/:certificate_id/challenges/http01/start|stop
  • /apiv1/internal/certificates/:certificate_id/challenges/tlsalpn01/start|stop

示例

curl -X POST https://cjj365.cc/auth/general \
-H "Content-Type: application/json" \
-d '{"action":"login","email":"user@example.com","password":"password"}' \
-c cookies.txt

创建证书

curl -X POST https://cjj365.cc/apiv1/users/1/certificates \
-H "Content-Type: application/json" \
-b cookies.txt \
-d '{
"domain_name": "example.com",
"sans": ["example.com", "www.example.com"],
"acct_id": 7,
"action": "create",
"key_algorithm": "ECDSA",
"policy": "HYBRID"
}'

给设备分配证书(API Key)

curl -X POST https://cjj365.cc/apiv1/me/certificate-assign \
-H "Authorization: Bearer ak_yourtoken" \
-H "Content-Type: application/json" \
-d '{"device_public_id":"dev_abc123"}'

支持

如需访问或权限协助,请联系账号管理员或支持渠道。