File Library API

同じ商品が再度注文された場合、毎回デザインデータを入稿する必要をなくすため、デザインデータはファイルライブラリーに保存されており、再利用することができます。

デザインデータのファイルを直接ライブラリーに追加すると、注文作成の際にファイルIDが使用可能です。しかし、より便利な方法は、このAPIを使わずに注文作成の際にURLでファイルを指定することです。

注文を作成する際、デザインデータのファイルのURLを指定するだけでファイルが自動的に追加されます。そのため、このAPIを使用せずに済みます。

ファイル処理は非常に時間がかかることがあるため、非同期的に処理されます。 ファイルを追加すると、保留ステータスで保存され、後でダウンロードされて処理されます。 その後、ファイルが正常にロードされ、有効なイメージファイルである場合はOKステータスが2o2に、プロセスが失敗した場合は失敗に変更されます。 寸法や解像度などのファイルメタデータフィールドの中にはファイルが処理された後にのみ入力されるものがあります。

ファイルが処理される前にファイルでの注文が確認され、ファイルが無効であることが判明した場合、注文は失敗状態に戻され、再度訂正して確認する必要があります。

既存のファイルと同じURLを持つファイルを追加しようとすると、新しいファイルは作成されず、システムはその内容を更新せずに古いファイルを返します。

覚えておいてください - もしあなたがオリジナルを変更したのであれば、将来の注文のためにもURLが変更されていることを確認してください。 バージョンは再利用されます。
URLの末尾に「最終更新日」のタイムスタンプを追加して、変更されたファイルでURLが異なることを確認できます。

APIを通じて追加されたファイルは、Web上のファイルライブラリに表示されないように設定できます。作成時には visible 属性を false にするだけです。

Get list of files

GET https://api.printful.com/files

Returns list of last added files
Input parameters:
status string Filter by file status
offset integer Result set offset
limit integer Number of items per page (max 100)
レスポンス形式:
code integer ステータスコードのレスポンス 200
result File [ ]
id integer File ID
type string Role of the file in the order
hash string MD5 checksum of the file
url string Source URL where the file is downloaded from
filename string File name
mime_type string MIME type of the file
size integer Size in bytes
width integer Width in pixels
height integer Height in pixels
dpi integer Resolution DPI.
Note: for vector files this may be indicated as only 72dpi, but it doesn't affect print quality since the vector files are resolution independent.
status string File processing status:
ok - file was processed successfuly
waiting - file is being processed
failed - file failed to be processed
created timestamp File creation time
thumbnail_url string Small thumbnail URL
preview_url string Medium preview image URL
visible boolean Show file in the Printfile Library (default true)
paging Paging Paging information
total integer 利用可能なアイテム総数
offset integer Current result set page offset
limit integer ページに表示する最大アイテム数
APIキー
status Filter by file status
offset Result set offset
limit Number of items per page (max 100)
Execute
1つのファイルが追加され、3つがすでに処理されたファイルリスト。
Response data:
{
    "code": 200,
    "result": [{
        "id": 11815,
        "type": "default",
        "hash": null,
        "url": "http://www.example.com/images/tshirts/front_123.pdf",
        "filename": null,
        "mime_type": null,
        "size": 0,
        "width": null,
        "height": null,
        "dpi": null,
        "status": "waiting",
        "created": 1390818471,
        "thumbnail_url": null,
        "preview_url": null,
        "visible": true
    }, {
        "id": 10003,
        "type": "preview",
        "hash": "8a635765cc782c8c72a2a37ab7729a07",
        "url": "http://example.com/images/tshirts/preview_1.jpg",
        "filename": "tshirt_preview.jpg",
        "mime_type": "image/jpeg",
        "size": 19941,
        "width": 420,
        "height": 200,
        "dpi": 72,
        "status": "ok",
        "created": 1390818271,
        "thumbnail_url": "https://www.printful.com/storage/files/1559/8/8a635765cc782c8c72a2a37ab7729a07_thumb.png",
        "preview_url": "https://www.printful.com/storage/files/1559/8/8a635765cc782c8c72a2a37ab7729a07_preview.png",
        "visible": false
    }, {
        "id": 10002,
        "type": "default",
        "hash": "f259979918a51587c636fbc41508ce9b",
        "url": null,
        "filename": "mug-template.psd",
        "mime_type": "image/x-psd",
        "size": 1268210,
        "width": 2700,
        "height": 1380,
        "dpi": 300,
        "status": "ok",
        "created": 1390554376,
        "thumbnail_url": "https://www.printful.com/storage/files/1559/f/f259979918a51587c636fbc41508ce9b_thumb.png",
        "preview_url": "https://www.printful.com/storage/files/1559/f/f259979918a51587c636fbc41508ce9b_preview.png",
        "visible": true
    }, {
        "id": 11802,
        "type": "default",
        "hash": "756a648308bf49d4b763b87cdbd301dc",
        "url": "http://example.com/images/posters/test.pdf",
        "filename": "test.pdf",
        "mime_type": "application/pdf",
        "size": 5846629,
        "width": 5000,
        "height": 6667,
        "dpi": 300,
        "status": "ok",
        "created": 1390551170,
        "thumbnail_url": "https://www.printful.com/storage/files/1559/7/756a648308bf49d4b763b87cdbd301dc_thumb.png",
        "preview_url": "https://www.printful.com/storage/files/1559/7/756a648308bf49d4b763b87cdbd301dc_preview.png",
        "visible": true
    }],
    "paging": {
        "total": 4,
        "offset": 0,
        "limit": 20
    }
}

Add a new file

POST https://api.printful.com/files

Adds a new File to the library by providing URL of the file.

If a file with identical URL already exists, then the original file is returned. If a file does not exist, a new file is created.

Input parameters:
Request body File File data
id integer File ID
type string Role of the file in the order
hash string MD5 checksum of the file
url string Source URL where the file is downloaded from
filename string File name
mime_type string MIME type of the file
size integer Size in bytes
width integer Width in pixels
height integer Height in pixels
dpi integer Resolution DPI.
Note: for vector files this may be indicated as only 72dpi, but it doesn't affect print quality since the vector files are resolution independent.
status string File processing status:
ok - file was processed successfuly
waiting - file is being processed
failed - file failed to be processed
created timestamp File creation time
thumbnail_url string Small thumbnail URL
preview_url string Medium preview image URL
visible boolean Show file in the Printfile Library (default true)
レスポンス形式:
code integer ステータスコードのレスポンス 200
result File
id integer File ID
type string Role of the file in the order
hash string MD5 checksum of the file
url string Source URL where the file is downloaded from
filename string File name
mime_type string MIME type of the file
size integer Size in bytes
width integer Width in pixels
height integer Height in pixels
dpi integer Resolution DPI.
Note: for vector files this may be indicated as only 72dpi, but it doesn't affect print quality since the vector files are resolution independent.
status string File processing status:
ok - file was processed successfuly
waiting - file is being processed
failed - file failed to be processed
created timestamp File creation time
thumbnail_url string Small thumbnail URL
preview_url string Medium preview image URL
visible boolean Show file in the Printfile Library (default true)
APIキー
Request body
Execute
デザインデータライブラリーにファイルを追加すると、URLからファイル名が検出されます。その後、作成ファイルはすぐには処理されません。
Request body:
{
    "url": "http://www.example.com/files/tshirts/example.psd"
}
Response data:
{
    "code": 200,
    "result": {
        "id": 11816,
        "type": "default",
        "hash": null,
        "url": "http://www.example.com/files/tshirts/example.psd",
        "filename": null,
        "mime_type": null,
        "size": 0,
        "width": null,
        "height": null,
        "dpi": null,
        "status": "waiting",
        "created": 1390819101,
        "thumbnail_url": null,
        "preview_url": null,
        "visible": true
    }
}
モックアップライブラリーにファイルを追加し、ファイル名を手動で指定する
Request body:
{
    "type": "preview",
    "url": "http://www.example.com/files/tshirts/example.png",
    "filename": "shirt1.png"
}
ファイルをライブラリーに追加しますが、ウェブインターフェイスには表示されません
Request body:
{
    "url": "http://www.example.com/files/tshirts/example.psd",
    "visible": 0
}

Get file information

GET https://api.printful.com/files/{id}

Returns information about the given file
Input parameters:
id integer File ID
レスポンス形式:
code integer ステータスコードのレスポンス 200
result File
id integer File ID
type string Role of the file in the order
hash string MD5 checksum of the file
url string Source URL where the file is downloaded from
filename string File name
mime_type string MIME type of the file
size integer Size in bytes
width integer Width in pixels
height integer Height in pixels
dpi integer Resolution DPI.
Note: for vector files this may be indicated as only 72dpi, but it doesn't affect print quality since the vector files are resolution independent.
status string File processing status:
ok - file was processed successfuly
waiting - file is being processed
failed - file failed to be processed
created timestamp File creation time
thumbnail_url string Small thumbnail URL
preview_url string Medium preview image URL
visible boolean Show file in the Printfile Library (default true)
APIキー
id File ID
Execute
Response data:
{
    "code": 200,
    "result": {
        "id": 11802,
        "type": "default",
        "hash": "756a648308bf49d4b763b87cdbd301dc",
        "url": "http://example.com/images/posters/test.pdf",
        "filename": "test.pdf",
        "mime_type": "application/pdf",
        "size": 5846629,
        "width": 5000,
        "height": 6667,
        "dpi": 300,
        "status": "ok",
        "created": 1390551170,
        "thumbnail_url": "https://www.printful.com/storage/files/1559/7/756a648308bf49d4b763b87cdbd301dc_thumb.png",
        "preview_url": "https://www.printful.com/storage/files/1559/7/756a648308bf49d4b763b87cdbd301dc_preview.png",
        "visible": true
    }
}

Printfulを試す準備はできましたか?