コンテンツにスキップ

個人データのダウンロード URL を発行

POST
/rest/v1/exportMyData
curl --request POST \
--url https://game.retrogather.com/rest/v1/exportMyData \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "dataset": "library", "format": "json", "includeHistory": true, "platformIds": [ 1 ], "genreId": 1, "title": "example", "releaseDateFrom": "2026-04-15", "releaseDateTo": "2026-04-15", "attributes": [ "example" ], "buyPlace": "example", "ratingFrom": 1, "ratingTo": 1, "buyDateFrom": "2026-04-15", "buyDateTo": "2026-04-15", "buyPriceFrom": 1, "buyPriceTo": 1, "sortBy": "buyDate", "sortOrder": "asc", "wishPlace": "example", "wishDateFrom": "2026-04-15", "wishDateTo": "2026-04-15", "wishDateOverdue": "overdue", "wishPriceFrom": 1, "wishPriceTo": 1, "statuses": [ "PLANNED" ], "consoleIds": [ "example" ], "playStartDateFrom": "2026-04-15", "playStartDateTo": "2026-04-15", "playEndDateFrom": "2026-04-15", "playEndDateTo": "2026-04-15", "clearTargetDateFrom": "2026-04-15", "clearTargetDateTo": "2026-04-15", "clearTargetOverdue": "overdue", "totalPlayTimeFrom": 1, "totalPlayTimeTo": 1, "name": "example", "unrated": true, "purposeTypes": [ "LIBRARY" ], "collectionTypes": [ "INDIVIDUAL" ] }'

Export / エクスポート: issue a 15-minute bearer URL for a personal dataset (backup as JSON or CSV). Physical copy details are out of scope. One game per row (playRecords with includeHistory: one row per play record). Does not return the file body. library / wishlist / playRecords / collections / consoles accept the same filters and sort as the matching list tools; filters are stored in the token and reapplied on download. The response is a download URL; direct=1 style inline bodies are not provided.

Plans: FREE / LIGHT / PREMIUM. Scopes: library:read, play:read, games:read. FREE: not available: includeHistory, consoleIds, name, unrated, purposeTypes, collectionTypes; narrowed: buyDateFrom, buyDateTo, buyPriceFrom, buyPriceTo (see x-rgg-plan-differences). LIGHT: not available: includeHistory, purposeTypes, collectionTypes; narrowed: name (see x-rgg-plan-differences).

Media typeapplication/json
object
dataset
required

(LIGHT+: tags, consoles) (PREMIUM: collections, customGames)

string
Allowed values: library wishlist playRecords playLogs tags collections consoles customGames
format
string
Allowed values: json csv
includeHistory

PlayRecords only. true exports every play cycle (a game can appear more than once) instead of the latest record per game. (PREMIUM)

boolean
platformIds

Platform IDs (OR)

Array<integer>
<= 10 items
genreId

Genre ID from listGenres. A root ID matches the game’s genreId or genreSubId. A non-root ID matches titleKana using that genre’s taxonomy key.

integer
>= 1
title

Title, reading, or edition name

string
<= 30 characters
releaseDateFrom

Release date from (inclusive, YYYY-MM-DD). Games without a release date are excluded.

string format: date
releaseDateTo

Release date to (inclusive, YYYY-MM-DD). Games without a release date are excluded.

string format: date
attributes

Attribute IDs or labels (AND)

Array<string>
<= 5 items
buyPlace

Purchase place (substring, case-insensitive)

string
<= 30 characters
ratingFrom

Minimum rating (1-5)

integer
>= 1 <= 5
ratingTo

Maximum rating (1-5)

integer
>= 1 <= 5
buyDateFrom

YYYY-MM-DD

string format: date
buyDateTo

YYYY-MM-DD

string format: date
buyPriceFrom
integer
buyPriceTo
integer
sortBy

Sort field allowed by the selected dataset (same values as the matching list tool)

string
Allowed values: buyDate buyPrice updatedAt title rating releaseDate priority createdAt wishDate wishPrice playStartDate playEndDate clearTargetDate totalPlayTime name
sortOrder

Asc or desc

string
Allowed values: asc desc
wishPlace

Store being searched (substring, case-insensitive)

string
<= 30 characters
wishDateFrom

Planned purchase date from

string format: date
wishDateTo

Planned purchase date to

string format: date
wishDateOverdue

Overdue: wishDate is set and before today. not_overdue: no wishDate, or wishDate is today or later.

string
Allowed values: overdue not_overdue
wishPriceFrom

Target price from (JPY)

integer
wishPriceTo

Target price to (JPY)

integer
statuses

Play statuses (OR)

Array<string>
Allowed values: PLANNED PLAYING PAUSED COMPLETED DROPPED
consoleIds

Played console IDs (OR) (LIGHT+)

Array<string>
<= 5 items
playStartDateFrom

YYYY-MM-DD

string format: date
playStartDateTo

YYYY-MM-DD

string format: date
playEndDateFrom

YYYY-MM-DD

string format: date
playEndDateTo

YYYY-MM-DD

string format: date
clearTargetDateFrom

YYYY-MM-DD

string format: date
clearTargetDateTo

YYYY-MM-DD

string format: date
clearTargetOverdue

Overdue: unfinished (PLANNED/PLAYING/PAUSED) with clearTargetDate before today. COMPLETED/DROPPED are never overdue.

string
Allowed values: overdue not_overdue
totalPlayTimeFrom

Total play time from (minutes)

integer
totalPlayTimeTo

Total play time to (minutes)

integer
name

Collection name (substring, case-insensitive)

string
<= 30 characters
unrated

Only consoles with no rating

boolean
purposeTypes
Array<string>
Allowed values: LIBRARY PLAY
collectionTypes
Array<string>
Allowed values: INDIVIDUAL TAG PLATFORM

Tool result JSON (no MCP envelope). Delete previews also return 200 with confirmToken.

Media typeapplication/json
Any of:
object
url
required
string
expiresInSec
required
number
expiresAt
required
string
columns
Array<string>
note
string
dataset
required
string
format
required
string
Allowed values: json csv
rowCount
required
integer
key
additional properties
any
Example
{
"format": "json"
}

Invalid_input (arguments, broken JSON body)

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}

Missing or invalid API key

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}

Insufficient_scope, plan_required, or access_suspended

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}

Target or tool not found

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}

Burst or daily quota exceeded. See resetAt.

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}
Retry-After
integer

Seconds

Unexpected server failure. Retrying the same call will not help.

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}

Temporary failure or maintenance. Retry after Retry-After.

Media typeapplication/json

Entry errors (auth, routing, quota) use error; tool errors use code and message. Check retryable when present.

object
error
string
code
string
message
string
retryable
boolean
retryAfterSec
integer
requestId
string
resetAt
string
remaining
integer
scopes
Array<string>
upgradeUrl
string
key
additional properties
any
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"retryable": true,
"retryAfterSec": 1,
"requestId": "example",
"resetAt": "example",
"remaining": 1,
"scopes": [
"example"
],
"upgradeUrl": "example"
}
Retry-After
integer

Seconds