公開印刷ファイルAPI
ベースURL:https://app.customix.io/api
Authorization: Bearer {your-api-token}レート制限:1分あたり100リクエスト(ユーザーごと)
概要
商品のカスタマイズ内容を複数行のプレーンテキストで送信すると、その送信に対応する
印刷ファイルのURLの一覧が返されます。
印刷ファイルを作成する
POST /print-filesリクエストボディ
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
shop_name | string | はい | ショップ名(例:my-etsy-shop) |
name | string | はい | このショップにあるご自身のテンプレートの名前。名前が一致する最初のテンプレートが使用されます。 |
content | string | はい | 複数行のカスタマイズ内容。各行は<option name>: <value>の形式です。行頭の-は省略できます。 |
コンテンツの形式
各行が、テンプレート上のカスタマイズ可能な1つのオプションと、その値を対応づけます。
- オプション名は、大文字と小文字を区別せず、前後の空白を無視して照合されます。
- テキスト/カラー/日付のオプションには、値をそのまま指定します。例:
Harry、#ffffff、2026-12-25。
- スウォッチのオプション(フォント、画像、カラー、レイアウトなど)には、
利用可能なスウォッチの値のいずれかを選ぶ整数を指定します。デフォルトでは、1が最初の値、2が2番目の値、というように選択されます。
例:
- Enter your name: Harry
- Text color: #ffffff
- Font: 1レスポンス201
{
"id": "01jyz5kqxz2hrcwqzdq4jdv7r9",
"print_file_urls": [
"https://.../1.png",
"https://.../2.png"
]
}| フィールド | 型 | 説明 |
|---|---|---|
id | string | 送信を識別するID |
print_file_urls | string[] | テンプレート上の印刷ファイルごとに1つのURL(テンプレートの順序どおり) |
印刷ファイルは、生成が完了すると、返されたURLで利用できるようになります
(通常はレスポンスから数秒後)。
エラーレスポンス
| ステータス | ボディ | 原因 |
|---|---|---|
401 | {"message": "Unauthenticated."} | Bearerトークンがない、または無効です |
403 | {"message": "Unauthenticated"} | トークンは有効ですが、呼び出し元にshop_nameへのアクセス権がありません |
404 | {"message": "Template not found: …"} | このショップに、そのnameのテンプレートが存在しません |
422 | {"errors": {"shop_name": […], "name": […], "content": […]}} | 必須フィールドが指定されていません |
422 | {"message": "Unknown option: <name>"} | テンプレートに存在しないオプションを参照している行があります |
422 | {"message": "Swatch index N is out of range for option '…' …"} | スウォッチのインデックスが、利用可能な範囲外です |
422 | {"message": "Option '…' expects an integer swatch index, got …"} | スウォッチのオプションに、整数以外の値が渡されました |
リクエストのサンプル
curl -X POST 'https://app.customix.io/api/print-files' \
-H 'Authorization: Bearer 01jyz0z…|abc…' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"shop_name": "my-etsy-shop",
"name": "My Template",
"content": "- Enter your name: Harry\n- Text color: #ffffff\n- Font: 1"
}'更新日:2026/05/20