エクスポート
概要
- ReCOREのデータをxlsxまたはcsv形式でエクスポートできます。
手順
- 設定値取得APIより、使用可能な種別、フォーマット、カラムを取得します。
- エクスポート作成APIでエクスポートを開始します。
- 速く処理するため、可能であればcsv形式を利用してください。
- 意図しない出力フォーマットの変更を防ぐため、カラムは常に指定することを強く推奨します。(カラム未指定の場合、現在有効なカラムが全て出力されますが、追加は予告なく行われます。)
- エクスポートIDを保持し、エクスポート取得APIを定期的にコールし、ステータスが完了になるまで待機します。
- エクスポートが完了したら一時URLを使い、ファイルのダウンロードを行なってください。
- エクスポート履歴は7日分のみ保持されます。期限を超過したものはファイルのダウンロード等ができなくなります。
各種API
エクスポート検索
概要
基本情報
- リクエストパス:
GET /exports
- JWTスコープ:
export:index
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
query
key |
説明 |
制約など |
ids |
エクスポートID |
整数のみ、カンマ区切りで複数指定可能 |
type |
種別 |
- |
status |
ステータス |
- |
page |
ページ |
整数のみ、デフォルト:1 |
limit |
1ページあたりの件数 |
整数のみ、デフォルト:50、最大: 250 |
例
GET /exports?ids=32
[
{
"id": 32,
"store": {
"id": 1,
"name": "本店"
},
"staff": null,
"status": "DONE",
"type": "PRODUCT",
"format": "csv",
"attachment": {
"id": 54,
"file_key": "data.csv",
"tag": "GENERAL",
"file_name": "カタログ_20250523_183452.csv",
"url": "https://...",
"mime_type": "text/csv"
},
"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タイプ |
*.created_at |
int | null |
作成日時 |
*.updated_at |
int | null |
更新日時 |
- *1) 一時的なURLなので保存等はしない
- ステータス
IN_PROGRESS
処理中
FAILED
失敗
DONE
成功
エクスポート取得
概要
基本情報
- リクエストパス:
GET /exports/{export_id}
- JWTスコープ:
export:show
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
例
GET /exports/32
エクスポート検索のresponse[0]と同様
エクスポート作成
概要
基本情報
- リクエストパス:
POST /exports
- JWTスコープ:
export:store
- 必須個別JWTパラメータ:
なし
- レートリミット:
2 rps
body
key |
type |
説明 |
制約など |
type |
string |
種別 |
(*1) |
format |
string |
フォーマット |
(*1) |
columns |
?array<string> |
出力カラム |
(*1) (*2) |
query |
?object |
検索条件 |
(*3) |
- *1) エクスポート設定値取得で取得した値を使用
- *2) 未指定の場合は全て出力される
- *3) 各種別のAPIで使える検索条件を指定、例えば
type:PRODUCT
ならカタログAPIで使用できる検索条件を指定可
例
POST /exports
{
"type": "PRODUCT",
"format": "csv",
"columns": ["id", "code"],
"query": {
"ids": "1,2,3"
}
}
エクスポート設定値取得
概要
基本情報
- リクエストパス:
GET /exports/config
- JWTスコープ:
export:config:index
- 必須個別JWTパラメータ:
なし
- レートリミット:
5 rps
query
例 (全体設定値を取得)
GET /exports/config
{
"schema": "all",
"type": {
"BAD_CASE": {
"title": "宅配買取ケース"
},
"PRODUCT": {
"title": "カタログ"
}
}
}
key |
type |
説明 |
schema |
string |
all 固定 |
type |
object |
種別リスト |
type.* |
object |
(キーが種別を表す) |
type.*.title |
string |
種別名 |
例 (種別設定値を取得)
GET /exports/config?type=PRODUCT
{
"schema": "type",
"title": "カタログ",
"description": null,
"formats": [
"xlsx",
"csv"
],
"column": {
"id": {
"label": "商品ID",
"required": 0
},
"code": {
"label": "商品コード"
}
}
}
key |
type |
説明 |
schema |
string |
type 固定 |
title |
string |
種別名 |
description |
string | null |
説明 |
formats |
array<string> |
フォーマット |
column |
object |
カラムリスト |
column.* |
object |
(キーがカラムを表す) |
column.*.label |
string |
カラム名 |
column.*.group |
?string |
種別グループ名 |
column.*.require |
?int | bool |
trueなら指定必須、数値ならその位置で必須 |