インポート
概要
- xlsxまたはcsv形式のデータをアップロードし、ReCOREのデータを一括で作成更新することが可能です。
手順
- 設定値取得APIより、使用可能な種別、フォーマット、カラムを取得します。
- ファイルアップロード(機密ファイル)でファイルをアップロードし、ファイルキーを取得します。
- インポート作成APIでインポートを開始します。
- 速く処理するため、可能であればcsv形式を利用してください。
- インポートIDを保持し、インポート取得APIを定期的にコールし、ステータスが完了になるまで待機します。
- インポートが完了したら一時URLを使い、ファイルのダウンロードを行なってください。
- インポート履歴は7日分のみ保持されます。期限を超過したものはファイルのダウンロード等ができなくなります。
各種API
インポート検索
概要
基本情報
- リクエストパス:
GET /imports
- JWTスコープ:
import:index
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
query
| key |
説明 |
制約など |
| ids |
インポートID |
整数のみ、カンマ区切りで複数指定可能 |
| type |
種別 |
- |
| status |
ステータス |
- |
| page |
ページ |
整数のみ、デフォルト:1 |
| limit |
1ページあたりの件数 |
整数のみ、デフォルト:50、最大: 250 |
例
GET /imports?ids=32
[
{
"id": 32,
"store": {
"id": 1,
"name": "本店"
},
"staff": null,
"status": "FAILED",
"type": "PRODUCT",
"format": "csv",
"attachment": {
"id": 54,
"file_key": "data.csv",
"tag": "GENERAL",
"file_name": "カタログ_20250523_183452.csv",
"url": "https://...",
"mime_type": "text/csv"
},
"messages": [
"ファイルを開けません"
],
"created_at": 1747992889,
"updated_at": 1747992893
}
]
| key |
type |
説明 |
| * |
array<object> |
インポート |
| *.store |
object | null |
店舗 |
| *.store.id |
int |
店舗ID |
| *.store.name |
string |
店舗名 |
| *.store |
object | null |
スタッフ |
| *.staff.id |
int |
スタッフID |
| *.staff.name |
string |
スタッフ名 |
| *.status |
string |
ステータス |
| *.type |
string |
種別 |
| *.format |
string |
フォーマット |
| *.attachment |
object | null |
ファイル |
| *.attachment.id |
int |
ファイルID |
| *.attachment.file_key |
string |
ファイルキー |
| *.attachment.tag |
string |
タグ |
| *.attachment.file_name |
string | null |
ファイル名 |
| *.attachment.url |
string |
一時URL (*1) |
| *.attachment.mime_type |
string |
MIMEタイプ |
| *.messages |
array<string> |
処理メッセージ |
| *.created_at |
int | null |
作成日時 |
| *.updated_at |
int | null |
更新日時 |
- *1) 一時的なURLなので保存等はしない
- ステータス
IN_PROGRESS 処理中
FAILED 失敗
DONE 成功
インポート取得
概要
基本情報
- リクエストパス:
GET /imports/{import_id}
- JWTスコープ:
import:show
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
例
GET /imports/32
インポート検索のresponse[0]と同様
インポート作成
概要
基本情報
- リクエストパス:
POST /imports
- JWTスコープ:
import:store
- 必須個別JWTパラメータ:
なし
- レートリミット:
2 rps
body
| key |
type |
説明 |
制約など |
| type |
string |
種別 |
(*1) |
| format |
string |
フォーマット |
(*1) |
| file_key |
string |
ファイルキー |
(*2) |
| file_name |
?string | null |
ファイル名 |
100文字まで |
| query |
?object |
出力条件 |
- |
例
POST /imports
{
"type": "PRODUCT",
"format": "csv",
"file_key": "PdoJcUm1wtopvpX5goCSB36GR45FGuRJCrQAsvky.csv",
"file_name": "商品一覧.csv"
}
インポート設定値取得
概要
基本情報
- リクエストパス:
GET /imports/config
- JWTスコープ:
import:config:index
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
query
| key |
説明 |
制約など |
| type |
種別 |
- |
| q_* |
出力条件 |
- |
例 (全体設定値を取得)
GET /imports/config
{
"schema": "all",
"type": {
"PRODUCT": {
"title": "カタログ"
}
}
}
| key |
type |
説明 |
| schema |
string |
all 固定 |
| type |
object |
種別リスト |
| type.* |
object |
(キーが種別を表す) |
| type.*.title |
string |
種別名 |
例 (種別設定値を取得)
GET /imports/config?type=PRODUCT
{
"schema": "type",
"title": "カタログ",
"description": null,
"formats": [
"xlsx",
"csv"
],
"column": {
"id": {
"label": "商品ID"
},
"code": {
"label": "商品コード"
}
}
}
| key |
type |
説明 |
| schema |
string |
type 固定 |
| title |
string |
種別名 |
| description |
string | null |
説明 |
| formats |
array<string> |
フォーマット |
| column |
object |
カラムリスト |
| column.* |
object |
(キーがカラムを表す) |
| column.*.label |
string |
カラム名 |