同じプリンター群とデータに、独自のコードからアクセスできます。
APIでは、パネルと同じ操作を利用できます。キューへの追加、プリンターの状態取得、ファイルのアップロード、フィラメントの確認、ジョブ履歴の取得、一括操作が可能です。アカウントごとに1つのAPIキーとベースURLで開発を始められます。
1回のAPI呼び出しでプリントを開始
コードからエクストルーダーを動かすまでの最短手順です。/queue/AddItemにファイルIDをPOSTし、1台以上のプリンターを指定するだけで、あとは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"を設定します。
すべてのエンドポイントを見る
プリンターフリート全体をコードから操作
プリンター、プリントキュー、ファイル、フィラメント、ジョブ、統計、Webhook、カスタムフィールドなど、プリンター管理のあらゆる領域を網羅する100以上のRESTエンドポイントがあります。機能を絞ったサブセットではなく、パネルにページがある機能にはAPIエンドポイントも用意されています。ユーザー、学校、メンテナンス、タグ、スライサープロファイル、G-codeマクロにも対応しています。
- キュー:/queue/AddItemからのアイテム追加、承認待ちの一覧表示、プリンターの割り当て、順序の変更、承認または却下
- プリンター:状態の確認、G-codeの送信、軸の移動、ファンとモーターの制御、原点復帰、一時停止、再開、キャンセル
- ファイルとジョブ:アップロード、移動、履歴の取得、アーカイブ、原価見積もりの取得
- フィラメント:在庫の確認、プリンターへの割り当て、重量の調整、乾燥済みの記録、ブランドと色の管理
- 組織とユーザー:メンバー、権限、カスタムフィールド、タグ、学校のクラスを管理
状態を取得。コマンドを送信。認証ヘッダーは共通。
1回の呼び出しですべてのプリンターを一覧表示できます。レスポンスには、パネルに表示されるものと同じプリンターオブジェクトが含まれます。ステータス、現在のジョブ、温度、装着中のフィラメントなどの情報を確認できます。
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、ヘッダー1つだけ
すべてのエンドポイントはHTTPSを使用し、JSONで入出力します。認証に必要なヘッダーはX-API-KEY: your_key_hereの1つだけです。レスポンスには常に真偽値のstatusが含まれ、必要に応じてmessageも含まれるため、すべての呼び出しで同じ形式のエラー処理ができます。
ベースURLはhttps://api.simplyprint.io/{companyId}/{endpoint}です。{companyId}はAPIのバージョンではなく、アカウントIDです。SDKは不要です。cURL、Postmanなど、既存のHTTPクライアントを利用できます。
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.
特定のプリンターブランド向けに開発する場合
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連携から移行しますか?同じ形式でクラウド上にホストされるため、新たにサーバーを構築する必要はありません。
2つのプラン:Basic APIとEnhanced API
APIアクセスには2つのレベルがあり、プランによって利用できるレベルが異なります。Basicでは読み取りと限定的な書き込みが可能です。Enhancedではファイルのアップロード、キューの変更、プリントの開始、G-codeの送信が可能になります。
基本API
プリンターの状態、キュー、ジョブ、履歴、フィラメント、タグを読み取ります。
拡張API
すべての読み取りと書き込みに対応:アップロード、プリント開始、G-code送信、一括操作。
各エンドポイントのcURL付きライブAPIドキュメント
各エンドポイントには専用のドキュメントページがあり、リクエストの形式、パラメーター表、コピーして使えるcURLの例、右側に実際の成功レスポンスが表示されます。ペイロードの形式を推測する必要はありません。ドキュメントが仕様そのものです。
POST /{id}/jobs/GetPaginatedPrintJobs - 進行中または完了したジョブをページ単位で取得します。プリンター、ユーザー、ステータス、日付で絞り込めます。
POST /{id}/printers/Get - 1台または複数のプリンターを、状態、フィラメント、ハードウェア仕様、メンテナンスフラグとともに取得します。
POST files.simplyprint.io/{id}/files/Upload - 100 MBまでは単一リクエストで、それを超える場合はマルチパートでアップロードします。
ヘッダーは1つ(X-API-KEY)、ベースURLも1つです。アカウント設定からキーを取得してください。
パートナーアプリ向け:各顧客が標準の認可とトークン交換を通じて自身のアカウントを接続します。
パートナー連携向けOAuth2
SimplyPrintの顧客向けにサードパーティー製アプリを開発する場合は、OAuth2を使うことで、各顧客が同意画面から自身のアカウントを接続できます。共有APIキーやシークレットのコピー&ペーストは不要です。これは公式のCura連携と同じフローで、Zapier、n8n、Make、Activepiecesなどのプラットフォーム向けパートナー連携にも提供しています。
- 認可URL: https://simplyprint.io/panel/oauth2/authorize
- トークン交換: https://simplyprint.io/api/0/oauth2/Token(0は意図的な指定です。交換はアカウントに限定されません)
- 連携されたアカウントの確認:交換後、ベアラートークンを使って/account/GetUserを呼び出すと、ユーザーが選択したアカウントを確認できます。
- 以降の呼び出し:標準の/api/{companyId}/{endpoint}パスをBearerトークンとともに使用します。
# 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、申請するスコープ、アプリの機能をまとめた1段落の説明を送信してください。
OAuth2クライアントアクセスをリクエスト
プラン別のAPIレート制限と機能
Free、Basic、Cloud Slicer、Filament ManagerプランではAPIを利用できません。Pro以上ではBasic API、Print Farm以上ではEnhanced API(ファイルのアップロードと書き込み操作)を利用できます。
| 機能 / 制限 | 無料 | 基本 | Pro | プリントファーム | エンタープライズ | 学校 | クラウドスライサー | フィラメントマネージャー |
|---|---|---|---|---|---|---|---|---|
|
1分あたりのAPIリクエスト数
直近1分間の制限です。この時間内の一時的な集中は問題ありません。上限に達すると短いタイムアウトが返され、1分が経過すると制限がリセットされます。
|
- | - | 60 | 180 | 600 | 180 | - | - |
|
基本APIアクセス
プリンターの状態、キュー、ジョブ、履歴、フィラメント、タグを読み取ります。Pro以上のプランで利用できます。
|
||||||||
|
拡張API(読み書きの全機能)
ファイルのアップロード、プリントを開始するキューの変更、G-codeの直接送信、一括書き込み操作が利用可能になります。プリントファームプラン以上が対象です。
|
||||||||
|
Zapier、n8n、Make、Activepieces
OAuth2ベースの公式ピースを使って接続します。書き込み機能はアカウントのAPIプランに従います。
|
||||||||
|
MCP経由のAIエージェント
Claude、Claude CodeなどのMCP対応AIクライアントを接続し、自然言語でプリンター群を操作できます。
|
プランについて詳しく確認しますか?
料金と機能の比較をすべて表示
APIとWebhookを連携してイベントをプッシュ通知
REST APIはプル方式です。リクエストに対してSimplyPrintが応答します。Webhooksと組み合わせるとプッシュ方式も使えます。プリントの開始、ジョブの完了、フィラメント切れ、プリントキューの項目の承認などのイベントをSimplyPrintがエンドポイントにPOSTするため、ポーリングは不要です。両方を使うことで、あらゆる連携パターンに対応できます。
Webhooksはプリントファーム以上のプランに含まれ、パネル内部と同じイベントモデルを使用します。
APIキーを30秒で取得
パネルにログインし、アカウント設定 → APIを開いて、キーに名前を付けてコピーすれば完了です。キーはユーザーごとに発行され、アカウント内の権限に従います。そのため、連携機能はキーの所有者と同じ権限でのみ動作します。
API設定を開く
完全なリファレンスはapidocs.simplyprint.ioで確認できます
すべてのエンドポイント、リクエストとレスポンスの形式、エラーコード、OAuth2フロー、スコープ一覧を掲載しています。ドキュメントはAIにも対応しており、AIが一度に読み込めるllms.txtと、カタログを利用したツールの構築に使える構造化されたapi/index.jsonを用意しています。
APIリファレンスを開く追加機能:公開されたOpen Filament Database API
SimplyPrint APIに加え、3Dプリント用フィラメントのブランド、素材、色、サイズ、販売店をまとめたオープンソースのカタログ、Open Filament Databaseも運営しています。MITライセンスで提供され、完全にオープンなJSON APIを備えています。キー、認証、利用制限プランは不要で、ブランド、素材、色のデータをアプリ、スライサー、ストア、スプール管理ツールに直接取り込めます。このデータはSimplyPrintのフィラメントプリセットにも使われています。
エンドポイント: api.openfilamentdatabase.org、詳細なドキュメント: openfilamentdatabase.org/docs。
よくある質問
APIキーを取得するには?
レート制限の内容は何ですか?
APIキーとOAuth2のどちらを使うべきですか?
Prusa、Bambu Lab、OctoPrintのプリンターでも使えますか?
プッシュイベント用のWebhookはありますか?
AIエージェント用のMCPサーバーはありますか?
公式SDKはありますか?
サンドボックスやテスト環境はありますか?
URLの形式は何ですか?v1やv2はありますか?
レスポンスの構造を破壊的に変更する、認証方式を変更する、URLを再構成するなどの大規模な変更を行う場合は、/v2などのプレフィックスを付けて提供し、既存のAPIも並行して利用できるようにします。現在、このような変更の予定はありませんが、対応方針としてお知らせします。
ブランド別APIガイド
特定のプリンターエコシステム向けに開発する場合、各ガイドでそのブランドに重要なエンドポイント、コード例、固有の注意点を確認できます。
Prusa API
すべてのPrusaプリンターをコードから操作
Bambu Lab API
すべてのBambu LabプリンターとAMSをコードから操作
OctoPrint APIの代替
クラウドで提供され、複数のプリンターに対応したOctoPrint REST連携の代替手段