提供Web API②:印刷データのアップロード

※この記事はSmartLabel Web API用アカウントをお持ちの「開発会社」様向けの内容となります。SmartLabel Web APIの概要についてはこちらからご確認ください。
また、本記事内に記載されている用語についての説明はこちらをご覧ください。

印刷データのアップロード方法

SmartLabel Web APIを利用して、差し込みに利用する印刷データをアップロードします。

【Web APIのURL、POST情報、戻り値】

URL https://www.smartlabel.jp/smartapi/uploadFile/
POST情報
キー 備考
dev_code 開発者ID 必須
api_user_id 連携利用ID 必須
print_data 印刷データのファイル
[ファイルタイプ]

●カンマ区切り、タブ区切りのテキストファイル
●エクセルファイル

必須
1回のアップロードでは1ファイルのみアップロード可
print_text_info 対象のファイルがカンマ区切り、タブ区切りのテキストファイルの場合に情報を指定
※「テキストファイルの付加情報」を参照
 
print_excel_info 対象のファイルがエクセルファイルの場合に情報を指定
※「エクセルファイルの付加情報」を参照
 

[テキストファイルの付加情報]

delimiter 区切り文字の指定
カンマ区切り:comma
タブ区切り:tab
「comma」もしくは「tab」を指定ください。
title_row_no 項目名(各列のタイトル)の開始行の番号
(テキストファイルの場合は、「1」を指定する場合が多いと推測します)
※項目名が無い場合は「0」を指定してください。
title_col_no 項目名(各列のタイトル)の開始列の番号
(テキストファイルの場合は、「1」を指定する場合が多いと推測します)

JSON形式で上記の情報をまとめ、「print_text_info」の値としてPOSTしてください。
利用方法は、以下のPHPのサンプルを参照ください。

[エクセルファイルの付加情報]

sheetName シート名を指定ください。
title_row_no 項目名(各列のタイトル)の開始行の番号を指定してください。
title_col_no 項目名(各列のタイトル)の開始列の番号を指定してください。

JSON形式で上記の情報をまとめ、「print_excel_info」の値としてPOSTしてください。
利用方法は、以下のPHPのサンプルを参照ください。

戻り値 JSON形式「{“printDataId”:”(アップロードファイルのID)”}」の情報を返します。

●サンプル(PHP)

<?php
$url = ‘https://www.smartlabel.jp/smartapi/uploadFile/’;

//アップロードする対象のファイル
$targetFile = ‘●●’; //印刷データファイルのパス
$filename = $fileName; //ファイル名

$post_text = ”;
$post_excel = ”;
$print_text_array = array();
$print_excel_array = array();

//カンマ区切りテキストファイルの場合
$print_text_array[“delimiter”] = ‘comma’;
$print_text_array[“title_row_no”] = ‘1’;
$print_text_array[“title_col_no”] = ‘1’;
$post_text = json_encode($print_text_array);

//エクセルファイルの場合
$print_excel_array[“sheetName”] = ‘Sheet1’;
$print_excel_array[“title_row_no”] = ‘1’;
$print_excel_array[“title_col_no”] = ‘1’;
$post_excel = json_encode($print_excel_array);

$data = array(
//開発者ID
“dev_code” => $devID,
//連携利用ID
“api_user_id” => $uID,
//アップロードファイル
“print_data” = ‘@’.$targetFile.’;filename=’. $filename,
//テキストファイルだった場合
“print_text_info” => $post_text,
//エクセルファイルだった場合
“print_excel_info” => $post_excel
);

$conn = curl_init();
curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($conn, CURLOPT_RETURNTRANSFER, true);
curl_setopt($conn, CURLOPT_URL, $url);
curl_setopt($conn, CURLOPT_POST, true);
curl_setopt($conn, CURLOPT_POSTFIELDS, $data);
//アクセス元のURLを指定してください
curl_setopt($conn, CURLOPT_REFERER, ‘http://●●●●’);
//戻り値はJSON形式です
$res = curl_exec($conn);
$res_array = json_decode($res,true);
curl_close($conn);
?>

 

取得した「printDataId」は差し込み印刷の時に指定をします。詳細は「提供API③:差し込み印刷」をご覧ください。

※印刷データは、弊社サーバ上で暗号化し保存しますので、ご安心ください。
※アップロードされたデータは1日間のみ利用可能です。

関連記事