面向您的3D打印机群的REST API。通过HTTPS传输JSON。一个请求头即可认证。

SimplyPrint 3D打印机API

使用您自己的软件控制SimplyPrint。通过您的ERP将任务加入打印队列、构建自定义仪表板、接入现有工作流程,或将SimplyPrint连接到Zapier、n8n或Make。您可以通过有文档、已版本控制且稳定的JSON端点执行面板中的每项操作。无论您的设备群使用Prusa、Bambu Lab、Creality、Anycubic、Elegoo,还是任何支持OctoPrint或Klipper的设备,使用方式都相同。

免费开始使用 更多信息和操作指南
功能图像

同一机群,同一数据,由您的代码掌控。

API提供面板使用的相同操作:加入队列、获取打印机状态、上传文件、查看耗材、读取任务历史、执行批量操作。一个API密钥,每个账户一个基础URL,您即可开始开发。

通过一次API调用开始打印

从您的代码到让挤出机动起来的最快路径:向/queue/AddItem POST 文件 ID,指定一台或多台打印机,SimplyPrint 会处理后续流程。后台中,队列运行与面板相同的匹配、审批和路由逻辑,因此打印会在与人工点击“打印”时相同的打印机上开始。

curl -X POST "https://api.simplyprint.io/{companyId}/queue/AddItem" \
  -H "X-API-KEY: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "fileId": "abc123",
    "amount": 1,
    "for_printers": "42,43",
    "position": "top"
  }'
成功响应:
{
  "status": true,
  "message": null,
  "approval_status": "not_required",
  "id": 90817,
  "queue_position": 1
}
URL中的{companyId}是您的账户ID,不是版本号,可在登录后从面板URL中找到。设置for_printers以指定特定打印机,或省略它以让SimplyPrint选择兼容打印机。设置position: "top"可跳到队首。

浏览所有端点

通过代码控制您设备群的每个部分

超过100个REST端点,覆盖您机群的各个方面:打印机、打印队列、文件、耗材、打印任务、统计信息、webhook、自定义字段等。这不是精简的子集:只要面板中有页面,API中就有相应端点。用户、学校、维护、标签、切片软件配置文件和G-code宏也全部接入。

  • 队列:通过/queue/AddItem添加队列项、列出待审批项、分配打印机、调整顺序以及批准或拒绝
  • 打印机:查看状态、发送G-code、点动轴、控制风扇和电机、归零、暂停、恢复、取消
  • 文件和任务:上传、移动、获取历史记录、归档、获取成本估算。
  • 耗材:读取库存、分配给打印机、调整重量、标记为已烘干、管理品牌和颜色。
  • 账户和用户,管理成员、权限、自定义字段、标签和学校班级

浏览所有端点

读取状态。发送命令。使用相同的身份验证请求头。

一次调用即可列出所有打印机。响应与面板所呈现的打印机对象相同,包含状态、当前任务、温度、已装载的耗材等全部信息。

curl "https://api.simplyprint.io/{companyId}/printers/Get" \
  -H "X-API-KEY: your_api_key_here"
暂停正在打印的任务,发送单次G-code命令,点动坐标轴,所有实时端点均采用相同的JSON输入、JSON输出格式。
curl -X POST "https://api.simplyprint.io/{companyId}/printers/actions/Pause" \
  -H "X-API-KEY: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{ "pid": 42 }'
curl -X POST "https://api.simplyprint.io/{companyId}/printers/actions/SendGcode" \
  -H "X-API-KEY: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{ "pid": 42, "gcode": "G28 X Y" }'

REST、JSON、一个请求头,就这么简单

每个端点均使用HTTPS,输入JSON,输出JSON。身份验证只需一个请求头:X-API-KEY: your_key_here。响应始终包含status布尔值和可选的message,因此每次调用的错误处理结构一致。

基础 URL 为 https://api.simplyprint.io/{companyId}/{endpoint},其中{companyId}是您的账户 ID,而非 API 版本。无需 SDK;cURL、Postman 和您已有的任何 HTTP 客户端都可用。

Weshape
客户案例

了解Weshape如何使用API管理~50 printers

One of the most impactful features in SimplyPrint has been the API access, which has been implemented and expanded in the time we've been with SimplyPrint. We sometimes have unique challenges, and the API gives us an effective way to make it fit our exact use-case.
- Weshape, Kolind, Denmark
阅读Weshape的故事

正在为特定打印机品牌开发产品?

SimplyPrint不依赖特定硬件,但我们的品牌专属 API页面涵盖对各生态系统重要的端点、代码示例和特殊情况。如果您正在编写专门面向 Prusa、Bambu Lab或 OctoPrint主机的集成代码,请从这里开始。

通过代码控制Prusa MK4、MK4S、MK3.9、MK3.5、Mini+、XL和CORE One。兼容PrusaLink。

通过代码控制Bambu Lab X1C、P1S、P1P、A1、A1 Mini、H2D。支持AMS。

正从OctoPrint REST集成迁移?结构相同,由我们的云端托管,无需部署新服务器。

两个层级:基础API和增强API

API访问按套餐分为两个级别。Basic提供读取权限和有限写入权限;Enhanced解锁高级功能,包括文件上传、队列变更、启动打印和发送G-code。

框架 框架

基础API

读取打印机状态、队列、任务、历史记录、耗材和标签。

增强型API

完整读写支持:上传、开始打印、发送G-code、批量操作。

包含每个端点cURL示例的实时API文档

每个端点都有专属文档页面,包含请求签名、参数表、可直接复制粘贴的cURL示例,以及右侧的真实成功响应。无需再猜测请求负载结构,文档就是规范。

打印任务

POST /{id}/jobs/GetPaginatedPrintJobs,分页获取进行中或已完成的任务,可按打印机、用户、状态和日期筛选。

打印机信息

POST /{id}/printers/Get,获取一台或多台打印机及其状态、耗材、硬件规格和维护标记。

文件上传(增强版)

POST files.simplyprint.io/{id}/files/Upload,单个请求最大100 MB,较大文件使用多部分上传。

API密钥认证

一个请求头(X-API-KEY),一个基础URL。请在您的账户设置中获取密钥。

OAuth2 流程

对于合作伙伴应用:每位客户均通过标准授权/令牌交换连接自己的账户。

用于合作伙伴集成的 OAuth2

正在构建供其他 SimplyPrint 客户使用的第三方应用?请使用 OAuth2,让每位客户可通过同意界面连接自己的账户,无共享 API 密钥,无复制粘贴的密钥。这与我们官方 Cura 集成使用的流程相同,也与我们为 Zapier、n8n、Make 和 Activepieces 等平台上的合作伙伴集成提供的流程相同。

  • 授权URL:https://simplyprint.io/panel/oauth2/authorize
  • 令牌交换:https://simplyprint.io/api/0/oauth2/Token0是有意设置的,交换不限定账户范围)
  • 确定绑定的账户:完成交换后,使用 bearer token 调用/account/GetUser,以确定用户选择了哪个账户。
  • 后续调用:使用带有Bearer令牌的标准/api/{companyId}/{endpoint}路径。
# 1) Send the user to the consent screen
https://simplyprint.io/panel/oauth2/authorize
  ?response_type=code
  &client_id=YOUR_CLIENT_ID
  &redirect_uri=https://your-app.example.com/callback
  &scope=printers.read+queue.write+files.read
  &state=<random>

# 2) Exchange the returned code for an access token
curl -X POST "https://simplyprint.io/api/0/oauth2/Token" \
  -d "grant_type=authorization_code" \
  -d "code=AUTH_CODE_FROM_CALLBACK" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET" \
  -d "redirect_uri=https://your-app.example.com/callback"

# 3) Discover the bound company, then call API as that company
curl "https://simplyprint.io/api/0/account/GetUser" \
  -H "Authorization: Bearer ACCESS_TOKEN"
经批准的OAuth2客户端通过OAuth2客户端申请表配置。请向我们发送您的重定向URI、所需权限范围,以及一段说明您的应用功能的简介。

申请 OAuth2 客户端访问权限

按套餐划分的API速率限制和功能

免费版、基础版、云切片和耗材管理器套餐不提供API。专业版及以上提供基础API,打印农场版及以上提供增强API(文件上传和写入操作)。

功能/限制 免费 基础 专业版 打印农场 企业版 学校 云切片 耗材管理器
每分钟API请求数
滚动式每分钟限流器。窗口内的突发请求没问题,达到限制会返回短暂超时,下一分钟开始时限流器将重置。
- - 60 180 600 180 - -
基础API访问权限
读取打印机状态、队列、任务、历史记录、耗材和标签。专业版及以上。
增强型API(完整读写)
解锁文件上传、会启动打印的队列变更、直接发送G-code和批量写入操作。Print Farm及以上套餐。
Zapier、n8n、Make 和 Activepieces
通过官方基于OAuth2的集成连接。写入权限继承账户的API套餐。
通过MCP使用AI智能体
连接Claude、Claude Code和其他兼容MCP的AI客户端,通过自然语言管理您的机群。

您想详细了解我们的套餐吗?

查看完整价格和功能对比
功能图像

将API与webhook搭配使用以接收推送事件

REST API负责拉取,您发出请求,SimplyPrint作出响应。搭配webhook即可实现推送:打印开始、任务完成、耗材用尽或队列项获批时,SimplyPrint会将事件POST到您的端点,您无需轮询。两者共同涵盖所有集成模式。

Webhooks属于打印农场及以上套餐,并采用与面板内部相同的事件模型。

查看Webhooks功能

30秒获取API密钥

登录控制面板,打开账户设置→API,为密钥命名并复制。完成即可。密钥归各用户所有,并遵循该用户在账户中的权限,因此集成可获得的访问权限与其所有者完全一致,不多不少。

打开您的API设置
功能图像

完整参考文档见 apidocs.simplyprint.io

涵盖所有端点、请求和响应结构、错误代码、OAuth2流程和范围列表。文档也对AI友好,提供用于一次性供AI读取的llms.txt,以及用于在目录基础上构建工具的结构化api/index.json

打开API参考文档

额外功能:开放耗材数据库的开放API

除了SimplyPrint API,我们还维护开放耗材数据库,这是一个采用MIT许可的开源3D打印耗材目录,包含品牌、材料、颜色、尺寸和商店。它拥有独立的完全开放的JSON API,无需密钥、无需认证、无速率分级,因此您可将品牌、材料和颜色数据直接导入自己的应用、切片软件、商店或料盘追踪器。这些数据同样为SimplyPrint自身的耗材预设提供支持。

端点:api.openfilamentdatabase.org,完整文档见openfilamentdatabase.org/docs

关于开放耗材数据库

常见问题

账户设置 → API。每个密钥均绑定到您的用户,并继承您在账户中的权限。Pro及更高套餐可使用API,Free和Basic套餐不提供API。
Pro每分钟60次请求,Print Farm和School每分钟180次,Enterprise每分钟600次。Free、Basic、Cloud Slicer和Filament Manager套餐完全不提供API。触及限制会返回短暂超时,限流器会在一分钟窗口滚动后重置。单秒突发多几次调用没有问题。
API密钥适用于您自己的账户和集成:最简单的方式,一个请求头即可。OAuth2适用于您构建供其他SimplyPrint客户连接其自身账户的产品,因此每个客户都通过同意页面授权,您绝不会看到他们的凭据。获批的OAuth2客户端由SimplyPrint通过OAuth2客户端申请表配置。
是的。SimplyPrint通过固件端集成连接Prusa打印机(MK4、MK4S、XL、Mini+、MK3.5、MK3.9、CORE One),通过直接连接Bambu Lab打印机(X1C、P1S、P1P、A1、A1 Mini、H2D),并通过我们的插件连接任何兼容OctoPrint的打印机。从API的角度看,它们都是同一种打印机对象,因此无论品牌如何,您的代码都以相同方式运行。请参阅各品牌专属页面了解生态系统详情:Prusa APIBambu Lab APIOctoPrint替代方案
是的。Webhooks为队列、文件、打印机、打印任务和耗材事件发送推送通知,您无需轮询。它们包含在Print Farm及更高级别的套餐中,并位于同级页面:webhooks功能页面
可以。SimplyPrint MCP服务器为 Claude、Claude Code及其他兼容 MCP的 AI客户端,以原生工具接口提供同样的机群操作。基于 OAuth2、受作用域限制,Pro及更高套餐可用。请参阅MCP功能页面
尚未提供,API是基于HTTPS的纯JSON,因此任何现代HTTP客户端都能用几行代码提供可用接口。我们提供官方Cura集成、面向AI代理的SimplyPrint MCP服务器,并可应要求为Zapier、n8n、Make和Activepieces等平台上的合作伙伴集成配置OAuth2客户端。如需特定语言的SDK,请通过[email protected]联系我们。
没有公开沙盒,集成需要针对您的真实账户构建。您可另建一个独立的免费或Pro测试账户用于开发,为其生成API密钥,并先将集成指向该账户,再切换到生产环境密钥。对于有明确集成需求的合作伙伴,我们很乐意应请求提供便于开发的环境。
基础地址为 https://api.simplyprint.io/{companyId}/{endpoint}。主机后的数字是您的 账户 ID,而非版本号,因此/api/123/account/Test会访问账户 123 的account/Test端点。API 本身目前不在 URL 中进行版本控制;我们会继续扩展它,但不会破坏现有接口。

如果我们发布真正重大的版本变更,例如响应结构不兼容、更改认证模型或重构URL,它会通过/v2(或类似)前缀发布,现有API仍会继续与之并行运行。目前路线图上没有这类变更,这里只是说明我们届时会如何处理。

目录