デジタル製品パスポート API:開発者向けドキュメント
顧客向け API を使うと、自社システムから製品の作成、データ項目の管理、パスポートの公開、QR コードと PDF のダウンロードを行えます。認証には、プラットフォームでご自身が発行する API キーを使用します。完全な仕様は OpenAPI 3.1 ファイルとして提供しています。
更新日: 2026年10月1日
概要
顧客向け API は、JSON を使用する REST インターフェースです。組織のデータ、つまり Web アプリケーションで表示されるのと同じ製品とパスポートを対象に動作します。代表的な用途は、ERP や PLM システムとの連携、マスターデータの夜間同期、印刷用の QR コードを取得するスクリプトなどです。
ベース URL は https://dpp.com2u.selfhost.eu/api/v1/integration です。QR コードと PDF のダウンロードを除き、すべてのレスポンスは JSON です。
仕様のダウンロード
すべてのエンドポイント、項目、例、エラーレスポンスを網羅した機械可読のリファレンスは、セキュリティスキーム ApiKeyAuth を備えた OpenAPI 3.1 仕様です。
同じファイルは API 自体からも GET /api/v1/integration/openapi.json でキーなしで取得できます。Swagger UI、Postman、またはお好みのコードジェネレーターにインポートしてください。ファイル内の説明はドイツ語で記載されています。
クイックスタート
- 登録するか、ログインします。API は有料プランに含まれます。料金をご覧ください。
- プラットフォームの「組織」エリアを開き、API キーを発行します。キーは一度しか表示されないため、すぐにコピーしてください。
- 接続をテストします。
curl -H "X-API-Key: $DPP_API_KEY" \
https://dpp.com2u.selfhost.eu/api/v1/integration/me
レスポンスには、組織、キーのスコープ、プラン、API 呼び出しの使用量が含まれます。
認証
すべての呼び出しで、キーを X-API-Key ヘッダーに含めて送信します。Authorization: Bearer dpp_key_… も同様に使用できます。組織は常にキーから判別され、パラメーターとして渡された組織 ID は評価されません。Web アプリケーションのセッショントークンは API では受け付けません。
キーは、それを発行した人に属します。操作はその人のオーナーまたは管理者としての権限で実行されます。その人がこのロールを失うと、新しいキーが発行されるまで API は 403 を返します。キーを再発行すると、以前のキーは直ちに無効になります。プラットフォームはキーの SHA-256 ハッシュのみを保存します。
エンドポイント
すべてのパスは /api/v1/integration の下にあります。各エンドポイントにはスコープが必要で、新しいキーには 4 つすべてが付与されます。
| メソッドとパス | 用途 | スコープ |
|---|---|---|
GET /me | 組織、スコープ、プラン、使用量 | すべてのキー |
GET /schemas | データ項目を含むスキーマ | products:read |
POST /products | 製品を作成(データ項目の指定も可) | products:write |
GET /products | 製品の一覧(status、q、limit、offset) | products:read |
GET /products/{id} | 製品を取得 | products:read |
GET /products/{id}/fields | 現在のデータ項目を取得 | products:read |
PATCH /products/{id}/fields | データ項目を設定 | products:write |
POST /products/{id}/passports | パスポートを作成して公開 | passports:write |
GET /products/{id}/passports | パスポートのバージョン一覧 | passports:read |
POST /passports/{id}/publish | 下書きバージョンを公開 | passports:write |
GET /products/{id}/passport/qr | PNG または SVG の QR コード | passports:read |
GET /products/{id}/passport/pdf | PDF のパスポート | passports:read |
製品の作成
name は必須です。schema_key を指定しない場合は、組織の標準スキーマが適用されます。使用可能なキーは GET /schemas で取得できます。データ項目は直接渡すことができます。field_status で値のステータスを指定し、approved の値だけがパスポートに反映されます。
curl -X POST https://dpp.com2u.selfhost.eu/api/v1/integration/products \
-H "X-API-Key: $DPP_API_KEY" -H "Content-Type: application/json" \
-d '{"name":"Battery module X1","category":"Industrial batteries",
"manufacturer_ref":"ART-4711","schema_key":"battery-v1",
"fields":{"battery_chemistry":"LFP"},"field_status":"approved"}'
ステータス 201 のレスポンスには、製品の id が含まれます。これは QR コードに埋め込まれる一意の製品識別子でもあります。プランの製品上限は Web アプリケーションと同様に適用されます。
パスポートの公開、QR コードと PDF のダウンロード
パスポートは、承認済みのデータ項目を新しいバージョンとして固定します。必須項目が不足している場合、API は 422 を返し、missing_fields に不足項目を示します。
curl -X POST -H "X-API-Key: $DPP_API_KEY" \
https://dpp.com2u.selfhost.eu/api/v1/integration/products/{id}/passports
curl -o qr.png -H "X-API-Key: $DPP_API_KEY" \
"https://dpp.com2u.selfhost.eu/api/v1/integration/products/{id}/passport/qr?format=png&size=600"
curl -o passport.pdf -H "X-API-Key: $DPP_API_KEY" \
https://dpp.com2u.selfhost.eu/api/v1/integration/products/{id}/passport/pdf
ベクター形式の QR コードには format=svg を使用します。PDF は公開後にのみ取得でき、公開前は API が 404 を返します。QR コードは公開パスポートページを指します。詳しくはExcel からデジタル製品パスポートを作成するをご覧ください。
エラーコード
| ステータス | 意味 |
|---|---|
| 401 | キーがない、無効、失効済み、または期限切れ |
| 402 | 上限に到達:API 呼び出し、製品、またはパスポート |
| 403 | スコープ不足、API を含まないプラン、キーの発行者がオーナーまたは管理者ではなくなった、組織が停止中 |
| 404 | オブジェクトが見つからない、または別の組織に属している |
| 422 | 入力が無効、不明な項目、または必須項目の不足 |
401 と 403 の場合、detail には code と message を持つオブジェクトが含まれます(例:insufficient_scope、api_not_in_plan)。402 の場合、detail にはリソース、上限、これまでの使用量が示されます。
制限事項
API で設定できるのは製品レベルのデータ項目です。ロットや個別品目の項目は Web アプリケーションで管理します。レート制限はありませんが、プランごとに呼び出し上限があり、認証されたすべての呼び出しが数えられます。仕様の取得は数えられません。最新のプランと上限は料金ページでご確認いただけます。API を使わない一括インポートには、データテンプレートをご利用ください。
よくある質問
- API キーはどこで取得できますか?
プラットフォームの「組織」エリアで取得できます。キーを発行できるのはオーナーと管理者です。キーは一度だけ表示され、組織ごとに 1 つだけ存在します。
- API はどのプランに含まれていますか?
Starter、Professional、Enterprise に含まれており、無料トライアルプランには含まれていません。プランのパスポート上限 1 件につき 10 回の API 呼び出しが含まれます。最新の値は料金ページでご確認いただけます。
- レート制限はありますか?
独立したレート制限(HTTP 429)はありません。利用はプランの呼び出し上限によって制限されます。上限に達すると、API は 402 を返します。
- 仕様を Swagger UI や Postman に読み込めますか?
はい。OpenAPI 3.1 ファイルは JSON と YAML でダウンロードでき、一般的なツールやコードジェネレーターにインポートできます。
製品データから始めましょう
30日間無料でお試しいただけます。データをインポートして確認し、製品パスポートとして公開できます。