OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  canva-connect: 通过 Connect API 管理 Canva 设计、资产与文件夹

canva-connect: 通过 Connect API 管理 Canva 设计、资产与文件夹

 
  redis ·  2026-02-02 20:27:22 · 3 次点击  · 0 条评论  

名称: canva
版本: 1.0.0
描述: |
通过 Canva Connect API 管理设计、资源和文件夹。

支持功能:
- 列出/搜索/整理设计和文件夹
- 导出完成的设计(PNG/PDF/JPG)
- 上传图片到资源库
- 使用数据自动填充品牌模板
- 创建空白设计(文档/演示文稿/白板/自定义)

不支持功能:
- 向设计中添加内容(文本、形状、元素)
- 编辑现有设计内容
- 上传文档(仅支持图片)
- AI 设计生成

最佳适用场景:资源流水线、导出自动化、组织整理、模板自动填充。
触发词:/canva, "upload to canva", "export design", "list my designs", "canva folder"。
作者: clawdbot
许可证: MIT
元数据:
clawdbot:
emoji: "🎨"
triggers: ["/canva"]
requires:
env:
- CANVA_CLIENT_ID
- CANVA_CLIENT_SECRET
primaryEnv: CANVA_CLIENT_ID
homepage: https://canva.dev/docs/connect/


Canva Connect

通过 Canva Connect API 管理设计、资源和文件夹。

支持与不支持的功能

✅ 支持 ❌ 不支持
列出/搜索设计 向设计中添加内容
创建空白设计 编辑现有设计内容
导出设计(PNG/PDF/JPG) 上传文档(仅支持图片)
创建/管理文件夹 AI 设计生成
在文件夹间移动项目
上传图片作为资源
自动填充品牌模板

实际应用场景

1. 资源流水线 🖼️

生成图表 → 上传到 Canva → 在项目文件夹中整理

2. 导出自动化 📤

在 Canva 中完成设计 → 通过 CLI 导出 → 用于文档/网站

3. 设计整理 📁

创建项目文件夹 → 移动相关设计 → 保持 Canva 整洁

4. 品牌模板自动填充 📋

在 Canva 中设置模板 → 通过 API 传递数据 → 获取个性化输出

快速开始

# 身份验证(打开浏览器进行 OAuth)
{baseDir}/scripts/canva.sh auth

# 列出你的设计
{baseDir}/scripts/canva.sh designs list

# 创建新设计
{baseDir}/scripts/canva.sh designs create --type doc --title "我的文档"

# 导出设计
{baseDir}/scripts/canva.sh export <design_id> --format pdf

设置

1. 创建 Canva 集成

  1. 访问 canva.com/developers/integrations
  2. 点击 Create an integration
  3. 设置权限范围:
    - design:content (读取 + 写入)
    - design:meta (读取)
    - asset (读取 + 写入)
    - brandtemplate:meta (读取)
    - brandtemplate:content (读取)
    - profile (读取)
  4. 设置 OAuth 重定向地址:http://127.0.0.1:3001/oauth/redirect
  5. 记录 Client ID 并生成 Client Secret

2. 配置环境

~/.clawdbot/clawdbot.json 文件的 skills.entries 下添加:

{
  "skills": {
    "entries": {
      "canva": {
        "clientId": "YOUR_CLIENT_ID",
        "clientSecret": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

或设置环境变量:

export CANVA_CLIENT_ID="your_client_id"
export CANVA_CLIENT_SECRET="your_client_secret"

3. 身份验证

{baseDir}/scripts/canva.sh auth

此命令将打开浏览器进行 OAuth 授权。令牌将存储在 ~/.clawdbot/canva-tokens.json 中。

命令

身份验证

命令 描述
auth 启动 OAuth 流程(打开浏览器)
auth status 检查身份验证状态
auth logout 清除存储的令牌

设计

命令 描述
designs list [--limit N] 列出你的设计
designs get <id> 获取设计详情
designs create --type <type> --title <title> 创建新设计
designs delete <id> 将设计移至回收站

设计类型: doc, presentation, whiteboard, poster, instagram_post, facebook_post, video, logo, flyer, banner

导出

命令 描述
export <design_id> --format <fmt> 导出设计
export status <job_id> 检查导出任务状态

格式: pdf, png, jpg, gif, pptx, mp4

资源

命令 描述
assets list 列出已上传的资源
assets upload <file> [--name <name>] 上传资源
assets get <id> 获取资源详情
assets delete <id> 删除资源

品牌模板

命令 描述
templates list 列出品牌模板
templates get <id> 获取模板详情
autofill <template_id> --data <json> 使用数据自动填充模板

文件夹

命令 描述
folders list 列出文件夹
folders create <name> 创建文件夹
folders get <id> 获取文件夹内容

用户

命令 描述
me 获取当前用户信息

示例

创建并导出海报

# 创建
{baseDir}/scripts/canva.sh designs create --type poster --title "活动海报"

# 导出为 PNG
{baseDir}/scripts/canva.sh export DAF... --format png --output ./poster.png

上传品牌资源

# 上传 Logo
{baseDir}/scripts/canva.sh assets upload ./logo.png --name "公司 Logo"

# 批量上传
for f in ./brand/*.png; do
  {baseDir}/scripts/canva.sh assets upload "$f"
done

自动填充模板

# 列出可用模板
{baseDir}/scripts/canva.sh templates list

# 使用数据自动填充
{baseDir}/scripts/canva.sh autofill TEMPLATE_ID --data '{
  "title": "第一季度报告",
  "subtitle": "财务摘要",
  "date": "2026年1月"
}'

API 参考

基础 URL:https://api.canva.com/rest

详细端点文档请参阅 references/api.md

故障排除

令牌过期

{baseDir}/scripts/canva.sh auth  # 重新进行身份验证

频率限制

API 对每个端点都有频率限制。脚本会自动处理退避重试。

缺少权限范围

如果操作因 403 错误失败,请确保你的集成已启用所需的权限范围。

数据文件

文件 用途
~/.clawdbot/canva-tokens.json OAuth 令牌(已加密)
~/.clawdbot/canva-cache.json 响应缓存
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor